万本电子书0元读

万本电子书0元读

顶部广告

WebRTC技术详解:从0到1构建多人视频会议系统电子书

售       价:¥

42人正在读 | 0人评论 6.4

作       者:栗伟

出  版  社:机械工业出版社

出版时间:2021-05-01

字       数:31.1万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
这是一本*、详细讲解WebRTC技术以及如何使用它构建一个可商用的视频会议系统的著作。      技术维度,本书不仅详细讲解了WebRTC规范和全部API、信令系统、底层技术、移动端和服务端实现,而且还总结了作者多年来的“踩坑”经验;实战维度,本书不仅提供了可直接应用于视频会议和在线教育等场景的真实案例,而且开源了一个可商用的视频会议系统WiLearning,教读者如何从0到1搭建一个高并发、易扩展的视频会议系统。      全书一共10章      第1章介绍了WebRTC的历史、技术架构、网络拓扑、兼容性等内容。      第2章讲解了使用WebRTC API获取本地摄像头、话筒、桌面等媒体流的方法,以及媒体流的录制、使用canvas操作媒体流的方法和示例。      第3章讲解了WebRTC底层使用的传输技术,如ICE、SDP、STUN/TURN等。      第4章介绍了使用RTCPeerConnection管理WebRTC连接的方法。      第5章介绍了WebRTC的媒体管理方法,结合示例演示了切换编码格式、控制视频码率、替换视频背景的方法。      第6章结合实例介绍一种*、实时的信令系统实现方法,并实现一个可以在生产环境中使用的信令系统。      第7章介绍了使用WebRTC数据通道传输任意数据的方法,结合示例演示了基于P2P的文本聊天以及文件传输功能的实现。      第8章介绍了使用WebRTC获取媒体流相关统计数据的方法,在示例中演示如何使用Chart.js绘图展示实时码率。      第9章介绍了在Android、iOS开发环境中使用WebRTC的方法,通过实例实现了基于WebRTC的视频聊天App。      第10章结合笔者的开源项目WiLearning介绍了从0到1打造高性能视频会议系统的方法。
目录展开

版权页

目录

前言

第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.1.1 构造媒体流

2.1.2 MediaStream属性

2.1.3 MediaStream方法

2.1.4 MediaStream事件

2.2 媒体轨道

2.2.1 MediaStreamTrack属性

2.2.2 MediaStreamTrack方法

2.2.3 MediaStreamTrack事件

2.3 媒体约束

2.3.1 约束类型

2.3.2 数据类型与用法

2.3.3 通用约束

2.3.4 视频约束

2.3.5 音频约束

2.3.6 屏幕共享约束

2.3.7 图像约束

2.3.8 约束的advanced属性

2.4 媒体设备

2.4.1 WebRTC隐私和安全

2.4.2 获取摄像头与话筒

2.4.3 共享屏幕

2.4.4 查询媒体设备

2.4.5 监听媒体设备变化

2.5 从canvas获取媒体流

2.6 从媒体元素获取媒体流

2.7 播放媒体流

2.8 录制媒体流

2.8.1 构造MediaRecorder

2.8.2 MediaRecorder属性

2.8.3 MediaRecorder方法

2.8.4 MediaRecorder事件

2.9 示例

2.9.1 代码结构

2.9.2 获取图片像素数据

2.9.3 替换视频背景

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.1.1 会话描述信息RTCSessionDescription

4.1.2 pending状态与current状态

4.1.3 ICE候选者RTCIceCandidate

4.2 RTCPeerConnection接口

4.2.1 构造函数RTCPeerConnection

4.2.2 连接配置RTCConfiguration

4.2.3 RTCPeerConnection接口的属性

4.2.4 RTCPeerConnection接口的方法

4.2.5 RTCPeerConnection接口的事件

4.3 完美协商模式

4.3.1 SDP冲突问题

4.3.2 使用完美协商模式

4.3.3 再谈ICE重启

4.4 示例

4.4.1 运行示例

4.4.2 使用WebSocket

4.4.3 创建RTCPeerConnection的时机

4.5 本章小结

第5章 RTP媒体管理

5.1 WebRTC编解码

5.2 RTCPeerConnection RTP扩展

5.2.1 RTCPeerConnection扩展方法

5.2.2 RTCPeerConnection扩展事件

5.3 传输媒体流

5.3.1 无流轨道

5.3.2 有流轨道

5.4 RTP收发管理

5.4.1 RTCRtpTransceiver属性

5.4.2 RTCRtpTransceiver方法

5.5 RTP发送器

5.5.1 RTCRtpSender属性

5.5.2 RTCRtpSender方法

5.6 RTP接收器

5.6.1 RTCRtpReceiver属性

5.6.2 RTCRtpReceiver方法

5.7 DTLS传输层

5.7.1 RTCDtlsTransport属性

5.7.2 RTCDtlsTransport方法

5.7.3 RTCDtlsTransport事件

5.8 ICE传输层

5.8.1 RTCIceTransport属性

5.8.2 RTCIceTransport方法

5.8.3 RTCIceTransport事件

5.9 使用DTMF

5.9.1 RTCDTMFSender属性

5.9.2 RTCDTMFSender方法

5.9.3 RTCDTMFSender事件

5.10 RTC错误处理

5.11 通话的挂起与恢复

5.11.1 通话挂起

5.11.2 通话恢复

5.12 示例

5.12.1 动态设置视频码率

5.12.2 使用VP9和H264

5.12.3 使用虚拟背景

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.3.1 使用Chart.js

8.3.2 获取码率数据

8.4 本章小结

第9章 移动端WebRTC

9.1 原生应用与混合应用

9.2 原生开发环境

9.2.1 Android原生开发环境

9.2.2 iOS原生开发环境

9.3 WebView

9.4 Cordova

9.4.1 编译环境

9.4.2 全局配置config.xml

9.4.3 应用程序行为preference

9.4.4 应用程序图标icon

9.4.5 简单的WebRTC移动应用

9.4.6 调试Cordova应用

9.5 Ionic Framework

9.5.1 安装与使用

9.5.2 开发工具

9.6 基于Ionic的WebRTC移动应用

9.6.1 使用模板创建应用程序

9.6.2 首页组件

9.6.3 连接管理服务

9.6.4 视频与聊天组件

9.6.5 构建Android应用程序

9.6.6 构建iOS应用程序

9.7 本章小结

第10章 从0到1打造多人视频会议系统

10.1 整体设计

10.2 媒体服务器

10.2.1 OWT

10.2.2 Kurento

10.2.3 Janus

10.2.4 Mediasoup

10.2.5 媒体服务器的选择

10.3 Mediasoup信令交互过程

10.4 服务器端实现

10.4.1 房间与参与者

10.4.2 管理与监控接口

10.5 客户端实现

10.5.1 发布媒体流

10.5.2 订阅媒体流

10.5.3 共享桌面

10.5.4 共享本地媒体

10.5.5 文档及白板

10.5.6 文字聊天

10.6 传输质量监控

10.7 从网络故障中恢复

10.8 本章小结

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部