展开全部

主编推荐语

深入解析WebRTC开源音视频互动技术原理、架构,并通过开源代码剖析其工作流程和机理。

内容简介

本书分为三部分,共13章。其中第1~3章为第一部分,主要介绍WebRTC是干什么的,大体结构是怎样的。我们该如何下载源码,如何对源码进行编译以及WebRTC的目录结构是如何安排的,每个目录的主要作用是什么。

第二部分包括第4~10章,这部分核心的目的是要向读者讲明白如何通过WebRTC实现1对1的通信。要实现一个1:1的实时通信系统,必然要涉及到很多知识。如SDP协议,媒体协商过程,NAT穿越,信令通信等等相关的知识。因此,在这部分我以实现WebRTC 1对1实时通信为目的,让读者讲解必要的知识,从而为后面知识的讲解打好基础。

第三部分包括第11~13章,是本书的核心内容,首先向读者讲解WebRTC的整体框架,让他们对WebRTC有个全局的认识,之后再逐步向他们介绍WebRTC如何采集音视频灵敏据,如何进行音视频的编解码,如何播放声音,如何渲染视频等相关的知识。

目录

  • 版权信息
  • 序言
  • 前言
  • 第1章 音视频直播的前世今生
  • 1.1 音视频的历史
  • 1.2 移动互联网
  • 1.3 音视频直播的两条技术路线
  • 1.4 音视频直播的现状
  • 1.5 音视频直播的未来
  • 1.6 小结
  • 第2章 为什么要使用webRTC
  • 2.1 自研直播客户端架构
  • 2.1.1 拆分音视频模块
  • 2.1.2 跨平台
  • 2.1.3 插件化管理
  • 2.1.4 其他
  • 2.2 WebRTC客户端架构
  • 2.3 小结
  • 第3章 音视频实时通信的本质
  • 3.1 两种指标
  • 3.1.1 实时通信延迟指标
  • 3.1.2 音视频服务质量指标
  • 3.2 实时通信的主要矛盾
  • 3.2.1 增加带宽
  • 3.2.2 减少数据量
  • 3.2.3 适当增加时延
  • 3.2.4 提高网络质量
  • 3.2.5 快速准确地评估带宽
  • 3.3 小结
  • 第4章 构建WebRTC一对一信令服务器
  • 4.1 WebRTC一对一架构
  • 4.2 细化架构
  • 4.3 信令
  • 4.3.1 信令定义
  • 4.3.2 信令时序
  • 4.3.3 信令传输协议的选择
  • 4.4 构建信令服务器
  • 4.4.1 信令服务器的实现方案
  • 4.4.2 信令服务器的业务逻辑
  • 4.4.3 信令服务器的实现
  • 4.4.4 信令服务器的安装与部署
  • 4.4.5 信令服务器的完整代码
  • 4.5 小结
  • 第5章 WebRTC实现一对一通信
  • 5.1 浏览器对WebRTC的支持
  • 5.2 遍历音视频设备
  • 5.3 采集音视频数据
  • 5.4 MediaStream与MediaStreamTrack
  • 5.5 本地视频预览
  • 5.6 信令状态机
  • 5.7 RTCPeerConnection
  • 5.7.1 创建RTCPeerConnection对象
  • 5.7.2 RTCPeerConnection与本地音视频数据绑定
  • 5.7.3 媒体协商
  • 5.7.4 ICE
  • 5.7.5 SDP与Candidate消息的交换
  • 5.7.6 远端音视频渲染
  • 5.7.7 客户端完整例子
  • 5.8 小结
  • 第6章 WebRTC中的℃E实现
  • 6.1 Candidate种类与优先级
  • 6.2 ICE策略
  • 6.3 P2P连接
  • 6.3.1 完全锥型NAT
  • 6.3.2 IP限制锥型NAT
  • 6.3.3 端口限制锥型NAT
  • 6.3.4 对称型NAT
  • 6.3.5 NAT类型检测
  • 6.3.6 如何进行NAT穿越
  • 6.4 网络中继
  • 6.4.1 TURN协议中转数据
  • 6.4.2 WebRTC使用TURN协议
  • 6.4.3 STUN/TURN服务器的安装与部署
  • 6.5 小结
  • 第7章 WebRTC中的SDP
  • 7.1 SDP标准规范
  • 7.2 WebRTC中SDP的整体结构
  • 7.3 媒体信息
  • 7.3.1 音频媒体信息
  • 7.3.2 视频媒体信息
  • 7.3.3 SSRC与CNAME
  • 7.4 PlanB与UnifiedPlan
  • 7.5 WebRTC如何保证数据安全
  • 7.6 RTP扩展头
  • 7.7 服务质量
  • 7.8 SDP详解
  • 7.9 ORTC
  • 7.10 小结
  • 第8章 各端的互联互通
  • 8.1 WebRTC Native的核心
  • 8.2 Android端的实现
  • 8.2.1 申请权限
  • 8.2.2 引入WebRTC库
  • 8.2.3 构造PeerConnectionFactory
  • 8.2.4 创建音视频源
  • 8.2.5 视频采集
  • 8.2.6 视频渲染
  • 8.2.7 创建PeerConnection
  • 8.2.8 建立信令系统
  • 8.3 iOS端的实现
  • 8.3.1 申请权限
  • 8.3.2 引入WebRTC库
  • 8.3.3 构造RTCPeerConnectionFactory
  • 8.3.4 创建音视频源
  • 8.3.5 视频采集
  • 8.3.6 本地视频预览
  • 8.3.7 建立信令系统
  • 8.3.8 创建RTCPeerConnection
  • 8.3.9 远端视频渲染
  • 8.4 PC端与Mac端的实现
  • 8.5 小结
  • 第9章 网络传输协议RTP与RTCP
  • 9.1 如何选择UDP与TCP
  • 9.2 RTP
  • 9.2.1 RTP协议头
  • 9.2.2 RTP的使用
  • 9.2.3 RTP扩展头
  • 9.2.4 RTP中的填充数据
  • 9.3 RTCP
  • 9.3.1 RTCP报文分类
  • 9.3.2 RTCP协议头
  • 9.3.3 WebRTC的反馈报文
  • 9.4 小结
  • 第10章 web RTC拥塞控制
  • 10.1 WebRTC的拥塞控制算法
  • 10.1.1 Goog­REMB
  • 10.1.2 Transport­CC
  • 10.1.3 基于丢包的拥塞评估算法原理
  • 10.1.4 WebRTC拥塞控制流程
  • 10.2 拥塞控制算法比较
  • 10.2.1 拥塞控制的准确性
  • 10.2.2 与TCP连接并存时的公平性
  • 10.2.3 同种类型连接的公平性
  • 10.2.4 拥塞控制算法在丢包情况下的表现
  • 10.3 小结
  • 第11章 WebRTC源码分析入门
  • 11.1 WebRTC源码的选择
  • 11.2 WebRTC开发环境的搭建
  • 11.2.1 配置软硬件环境
  • 11.2.2 安装依赖工具包
  • 11.2.3 获取并编译WebRTC代码
  • 11.3 国内WebRTC镜像
  • 11.4 WebRTC目录结构
  • 11.4.1 WebRTC主目录
  • 11.4.2 modules目录
  • 11.5 小结
  • 第12章 分析WebRTC源码的必经之路
  • 12.1 信令服务器实现分析
  • 12.1.1 信令服务器的组成
  • 12.1.2 信令服务器的工作流程
  • 12.2 PeerConnection客户端分析
  • 12.2.1 运行peerconnection_client
  • 12.2.2 peerconnection_client的组成
  • 12.2.3 界面的展示
  • 12.2.4 视频的渲染
  • 12.2.5 WebRTC的使用
  • 12.2.6 信令的处理
  • 12.3 小结
  • 第13章 WebRTC源码分析
  • 13.1 WebRTC的数据流
  • 13.2 WebRTC线程模型
  • 13.2.1 WebRTC线程的创建与使用
  • 13.2.2 线程切换
  • 13.3 网络传输
  • 13.3.1 网络接收与分发模块类关系图
  • 13.3.2 网络连接的建立
  • 13.4 音视频数据采集
  • 13.4.1 音频采集与播放
  • 13.4.2 视频采集与渲染
  • 13.5 音视频编解码
  • 13.5.1 音频编码
  • 13.5.2 音频解码
  • 13.5.3 视频编码
  • 13.5.4 视频解码
  • 13.6 小结
展开全部

评分及书评

评分不足
1个评分

出版方

机械工业出版社有限公司

机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。