Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

WebRTC Native 开发实战 PDF 下载


分享到:
时间:2022-08-21 10:28来源:http://www.java1234.com 作者:转载  侵权举报
本书是WebRTC方面的专著,WebRTC是一项实时通信领域革命性的技术,在实时音视频通信领域已经产生了深远的影响。本书涵盖了Native端WebRTC SDK基本场景的使用、基本场景下完整流程的源码
失效链接处理
WebRTC Native 开发实战  PDF 下载


下载地址:
版权归出版社和原作者所有,链接已删除,请购买正版

用户下载说明:

电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/29000156.html
 

相关截图:



资料简介:
本书是WebRTC方面的专著,WebRTC是一项实时通信领域革命性的技术,在实时音视频通信领域已经产生了深远的影响。本书涵盖了Native端WebRTC SDK基本场景的使用、基本场景下完整流程的源码导读,还介绍了一些高级的功能和场景,比如多人通话、屏幕共享、H.265、美颜、伴奏、本地录制等,*后还对Server端展开了一些讨论。本书通过细致的代码分析和源码导读,来讲解WebRTC Native的具体实战,分析WebRTC内部主要的数据流程,力图使读者能够通过实际操作快速入门和理解WebRTC Native的开发技巧。 本书主要面向的是所有希望从事WebRTC Native开发的IT从业人员,且要求读者具备一定的Java/Objective-C/C 语言基础。

资料目录:

第1章  开发环境搭建  //  1
 
1.1  WebRTC简介  //  1
 
1.2  iOS/macOS编译环境  //  2
 
1.3  Android/Linux编译环境  //  3
 
1.4  Windows编译环境  //  3
 
1.5  更新WebRTC编译环境  //  4
 
1.6  macOS上的Android编译环境  //  4
 
 
 
第2章  运行官方Demo  //  6
 
2.1  官方Demo简介  //  6
 
2.2  部署AppRTC Server  //  6
 
2.3  运行iOS AppRTCMobile  //  7
 
2.4  运行macOS AppRTCMobile  //  13
 
2.5  运行Android AppRTCMobile  //  17
 
2.6  iOS/macOS/Android AppRTCMobile互通测试  //  19
 
2.7  Android C 代码单步调试  //  20
 
2.8  部署PeerConnection Server  //  23
 
2.9  运行Windows PeerConnection Client  //  23
 
2.10  运行Linux PeerConnection Client  //  25
 
 
 
第3章  基本流程分析  //  26
 
3.1  拓扑结构  //  26
 
3.2  通话过程  //  27
 
3.2.1  PeerConnection  //  28
 
3.2.2  Offer、Answer和SDP  //  28
 
3.2.3  ICE  //  28
 
3.2.4  STUN  //  28
 
3.2.5  TURN  //  29
 
3.2.6  ICE Candidate  //  29
 
3.3  核心API和Demo代码位置  //  30
 
3.3.1  全局初始化  //  30
 
3.3.2  PeerConnectionFactory  //  31
 
3.3.3  创建PeerConnection  //  33
 
3.3.4  创建Source和Track  //  34
 
3.3.5  创建Offer  //  37
 
3.3.6  创建Answer  //  39
 
3.3.7  ICE Candidate回调和设置  //  41
 
3.3.8  ICE连接状态回调  //  42
 
3.3.9  核心API回顾  //  43
 
3.4  SDP初探  //  44
 
 
 
第4章  编译工具介绍  //  46
 
4.1  Ninja  //  46
 
4.2  GN  //  46
 
4.3  系统宏定义  //  48
 
4.4  添加源码目录和预编译依赖库  //  50
 
 
 
第5章  SDP详解  //  54
 
5.1  Plan B v.s. Unified Plan  //  54
 
5.2  Transceiver  //  54
 
5.3  SDP详解  //  57
 
5.3.1  session metadata  //  57
 
5.3.2  video media section  //  57
 
5.3.3  audio media section  //  60
 
5.3.4  application media section  //  61
 
5.4  操纵SDP  //  62
 
 
 
第6章  线程模型  //  63
 
6.1  三大线程的使用  //  63
 
6.1.1  对外接口的线程切换  //  63
 
6.1.2  内部代码的线程切换  //  65
 
6.2  三大线程的创建  //  66
 
6.2.1  iOS/macOS创建PC Factory  //  68
 
6.2.2  Android创建PC Factory  //  69
 
6.2.3  Windows/Linux创建PC Factory  //  70
 
 
 
第7章  视频数据流程  //  72
 
7.1  视频数据流程概览  //  72
 
7.2  视频采集  //  73
 
7.2.1  iOS/macOS视频采集  //  73
 
7.2.2  Android视频采集  //  79
 
7.2.3  Windows/Linux视频采集  //  85
 
7.3  视频渲染  //  87
 
7.3.1  iOS/macOS视频渲染  //  87
 
7.3.2  Android视频渲染  //  91
 
7.3.3  Windows/Linux视频渲染  //  92
 
7.4  视频编解码  //  92
 
7.4.1  iOS/macOS视频编码  //  94
 
7.4.2  iOS/macOS视频解码  //  100
 
7.4.3  Android视频编码  //  104
 
7.4.4  Android视频解码  //  113
 
7.4.5  Windows/Linux视频编码  //  120
 
7.4.6  Windows/Linux视频解码  //  125
 
7.4.7  编码流控测试  //  125
 
7.5  视频数据流程调用栈  //  130
 
 
 
第8章  音频数据流程  //  134
 
8.1  音频数据流程概览  //  134
 
8.2  音频采集和播放  //  135
 
8.2.1  iOS音频采集和播放  //  135
 
8.2.2  Android音频采集和播放  //  143
 
8.2.3  macOS音频采集和播放  //  153
 
8.2.4  Windows音频采集和播放  //  154
 
8.2.5  Linux音频采集和播放  //  154
 
8.3  音频设备模块ADM  //  155
 
8.3.1  iOS ADM  //  155
 
8.3.2  Android ADM  //  156
 
8.3.3  macOS ADM  //  156
 
8.3.4  Windows ADM  //  156
 
8.3.5  Linux ADM  //  157
 
8.3.6  声音路由  //  157
 
8.4  音频编解码模块ACM  //  158
 
8.4.1  音频编码  //  159
 
8.4.2  音频解码  //  160
 
8.5  音频数据流程调用栈  //  162
 
 
 
第9章  DataChannel  //  167
 
9.1  概览  //  167
 
9.2  iOS DataChannel  //  167
 
9.2.1  创建DataChannel  //  167
 
9.2.2  SDP  //  168
 
9.2.3  发送消息  //  169
 
9.2.4  接收消息  //  169
 
9.3  Android DataChannel  //  170
 
9.3.1  创建DataChannel  //  170
 
9.3.2  SDP  //  170
 
9.3.3  发送消息  //  170
 
9.3.4  接收消息  //  171
 
9.4  RTCQuicTransport  //  171
 
 
 
 
 
 
 
第10章  纯音/视频  //  172
 
10.1  概览  //  172
 
10.2  AudioTrack的禁用与启用  //  173
 
10.3  VideoTrack的禁用与启用  //  173
 
10.4  HijackCapturerObserver  //  174
 
10.4.1  iOS的实现  //  174
 
10.4.2  Android的实现  //  176
 
10.5  track状态的通知  //  177
 
10.6  录制相关  //  177
 
 
 
第11章  多人通话  //  178
 
11.1  概览  //  178
 
11.1.1  P2P网状结构  //  178
 
11.1.2  SFU结构  //  179
 
11.1.3  MCU结构  //  180
 
11.2  客户端代码实现  //  180
 
 
 
第12章  日志和状态统计  //  183
 
12.1  概览  //  183
 
12.2  iOS集成Mars XLog  //  185
 
12.3  Android集成Mars XLog  //  187
 
12.4  RTCStatsReport  //  189
 
12.4.1  AccumulatedValueSplitter  //  190
 
12.4.2  RtcStats选择函数  //  193
 
12.4.3  连接状态解析  //  194
 
12.4.4  视频发送状态解析  //  199
 
12.4.5  音频发送状态解析  //  205
 
12.4.6  视频接收状态解析  //  207
 
12.4.7  音频接收状态解析  //  209
 
 
 
第13章  屏幕共享  //  211
 
13.1  概览  //  211
 
13.2  iOS屏幕共享  //  211
 
13.2.1  CFRPCapturer的实现  //  212
 
13.2.2  CFRPCapturer的使用  //  214
 
13.2.3  修改RTCVideoSource  //  214
 
13.3  Android屏幕共享  //  215
 
13.3.1  ScreenCapturerAndroid的实现  //  215
 
13.3.2  ScreenCapturerAndroid的使用  //  217
 
 
 
第14章  H.265 支持  //  219
 
14.1  概览  //  220
 
14.2  SDP  //  220
 
14.3  编解码  //  222
 
14.3.1  iOS修改编码代码  //  222
 
14.3.2  iOS修改解码代码  //  224
 
14.3.3  Android修改编码代码  //  226
 
14.3.4  Android修改编码代码  //  227
 
14.4  RTP封包解包  //  227
 
 
 
第15章  美颜  //  228
 
15.1  Android美颜处理器  //  228
 
15.2  iOS美颜处理器  //  231
 
 
 
第16章  伴奏  //  234
 
16.1  概览  //  234
 
16.2  解码音频数据  //  235
 
16.2.1  初始化  //  235
 
16.2.2  音频解码  //  236
 
16.2.3  重采样  //  239
 
16.2.4  销毁  //  240
 
16.3  播放非接收的音频数据  //  240
 
16.4  伴奏混音发送  //  243
 
16.5  其他控制和调节功能  //  246
 
 
 
第17章  本地录制  //  247
 
17.1  概览  //  247
 
17.2  添加接口  //  248
 
17.3  获取数据  //  249
 
17.4  FFmpeg调用  //  252
 
17.5  视频关键帧  //  257
 
17.6  视频方向  //  258
 
17.7  纯音/视频录制  //  258
 
 
 
第18章  项目外使用WebRTC  //  260
 
18.1  概览  //  260
 
18.2  摘取源码  //  260
 
18.3  使用整体静态库  //  264
 
18.3.1  std::__1 的来源  //  264
 
18.3.2  修改WebRTC编译配置  //  266
 
18.3.3  提取头文件  //  267
 
18.4  使用子模块静态库  //  267
 
 
 
第19章  信令  //  269
 
19.1  AppRTC Server信令协议  //  269
 
19.1.1  HTTP POST加入房间  //  270
 
19.1.2  HTTP GET获取ICE服务器配置  //  271
 
19.1.3  长连接注册  //  271
 
19.1.4  HTTP POST发送消息  //  272
 
19.1.5  长连接发送消息  //  272
 
19.1.6  离开房间  //  273
 
19.1.7  同时加入  //  274
 
19.1.8  Offer/Answer和ICE Candidate顺序  //  274
 
19.2  OWT Server信令协议  //  274
 
19.2.1  OWT Server架构  //  274
 
19.2.2  OWT信令协议  //  276
 
19.2.3  HTTP POST创建token  //  276
 
19.2.4  SocketIO登录  //  278
 
19.2.5  SocketIO发布流  //  280
 
19.2.6  SocketIO发送Offer和ICE Candidate  //  280
 
19.2.7  SocketIO接收Answer  //  281
 
19.2.8  SocketIO订阅流  //  282
 
19.2.9  SocketIO接收其他用户的通知  //  282
 
19.2.10  SocketIO退出登录  //  283
 
19.2.11  Offer和ICE Candidate顺序  //  283
 
19.2.12  错误重连  //  284
 
19.2.13  HTTP GET用户和流列表  //  284
 
19.3  P2P网状结构信令协议  //  285
 
19.3.1  HTTP POST加入房间  //  286
 
19.3.2  长连接注册  //  287
 
19.3.3  WebSocket接收其他用户的通知  //  287
 
19.3.4  长连接发送Offer/Answer和ICE Candidate  //  288
 
19.3.5  离开房间  //  289
 
19.3.6  错误重连  //  289
 
19.3.7  Offer/Answer和ICE Candidate顺序  //  290
 
 
 
第20章  NAT穿透  //  291
 
20.1  NAT穿透原理  //  291
 
20.2  coturn的基本使用  //  295
 
 
 
第21章  OWT Server SFU数据流程  //  299
 
21.1  进程结构和JavaScript代码处理流程  //  299
 
21.1.1  进程结构  //  299
 
21.1.2  Management API  //  300
 
21.1.3  WebRTC Portal  //  300
 
21.1.4  Conference Agent  //  301
 
21.1.5  WebRTC Agent  //  302
 
21.1.6  WebRTC Agent node间的流扩散  //  303
 
21.1.7  Cluster Manager  //  304
 
21.1.8  完整过程总结  //  306
 
21.2  C 代码处理流程  //  307
 
21.2.1  WebRTC信令处理  //  308
 
21.2.2  WebRTC媒体数据处理  //  309
 
21.2.3  流扩散处理  //  311
 
 
 
第22章  OWT Server MCU数据流程  //  314
 
22.1  JavaScript代码处理流程  //  314
 
22.1.1  Conference Agent  //  314
 
22.1.2  Audio Agent  //  316
 
22.1.3  Video Agent  //  316
 
22.1.4  转码处理  //  317
 
22.2  C 代码处理流程  //  317
 
22.2.1  AudioMixer  //  317
 
22.2.2  VideoMixer  //  318
 
22.2.3  VideoTranscoder  //  320
 
后记  //  321
------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐