描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787121351785
内容简介
本书是一本通俗易懂的直播系统开发入门书籍。通过本书读者可以从零开始学习搭建直播系统。本书分为三部分,*部分(第1章)主要介绍Nginx,包括什么是Nginx,为什么要选择Nginx,在特定的环境下如何安装、配置及使用Nginx。第二部分(第2~4章)主要介绍基于Nginx的Nginx-rtmp-module、FFmpeg组件的安装与配置,并完整地搭建了一个简单的直播系统。第三部分(第5~7章)主要介绍在多终端下如何使用不同技术建立基于直播的SDK,并介绍多种SDK相关技术框架。本书适合对直播系统开发有兴趣的人员、高级语言开发者、音/视频开发入门者。
目 录
第1章 Nginx基础 1
1.1 Nginx概述及作用 1
1.1.1 可作为Web服务器 1
1.1.2 可作为反向代理服务器 2
1.1.3 可作为邮件代理服务器 3
1.2 为什么选择Nginx 3
1.3 安装Nginx 4
1.3.1 选择安装版本 4
1.3.2 编译安装Nginx 5
1.3.3 配置防火墙 7
1.3.4 加入自启动和系统服务 9
1.3.5 加入系统变量 12
1.4 Nginx命令行 13
1.4.1 命令行参数 14
1.4.2 启动、停止和重启 15
1.4.3 信号控制 17
1.4.4 平滑升级 18
1.5 Nginx配置 19
1.5.1 配置命令 20
1.5.2 配置上下文 20
1.5.3 配置文件结构 21
1.5.4 配置变量 22
1.5.5 配置实例 23
1.6 Nginx模块化体系 25
1.6.1 模块概述 25
1.6.2 模块分类 26
1.7 本章小结 26
第2章 Nginx-rtmp-module基础 27
2.1 Nginx-rtmp-module介绍 27
2.2 RTMP协议与HLS协议 28
2.2.1 RTMP协议 28
2.2.2 HLS协议 29
2.3 NRM的搭建 34
2.4 搭建个直播系统 36
2.5 本章小结 40
第3章 Nginx-rtmp-module进阶 41
3.1 如何使NRM支持HLS协议直播 41
3.2 推/拉流与串流码 43
3.3 Control控制器 43
3.3.1 record命令 44
3.3.2 drop命令 47
3.3.3 redirect命令 47
3.4 数据统计模块 47
3.5 Exec相关功能 48
3.6 本章小结 48
第4章 Nginx-rtmp-module 应用 49
4.1 FFmpeg 49
4.1.1 FFmpeg的安装 51
4.1.2 FFmpeg的配置 54
4.1.3 FFmpeg与直播的应用 59
4.2 基础配置信息 59
4.3 本章小结 64
第5章 Android端解决方案 65
5.1 移动端视频直播介绍 65
5.2 Yasea框架介绍 66
5.3 IJKPlayer框架介绍 69
5.4 Android端开发实战 74
5.4.1 主要功能 75
5.4.2 框架导入 75
5.4.3 滤镜 77
5.4.4 推流 80
5.4.5 拉流 83
5.4.6 弹幕 90
5.5 本章小结 94
第6章 iOS端解决方案 95
6.1 iOS端视频直播介绍 95
6.2 SDK的选择和前期准备 96
6.3 GPUImage框架介绍 99
6.4 LFLiveKit框架介绍 103
6.5 IJKPlayer框架介绍 106
6.6 iOS端开发实战 110
6.6.1 主要功能 110
6.6.2 框架导入 111
6.6.3 滤镜 112
6.6.4 推流 116
6.6.5 拉流 121
6.6.6 点赞 126
6.6.7 弹幕 129
6.7 本章小结 132
第7章 Web端解决方案 133
7.1 Adobe Flash Player 133
7.1.1 Flash Player 134
7.1.2 为什么要使用Flash 134
7.2 ActionScript与Flex 135
7.2.1 Flex环境的搭建 135
7.2.2 Flex项目的创建 137
7.2.3 使用ActionScript组件 142
7.2.4 NetStream对象 148
7.2.5 获取视频流 149
7.2.6 实例:使用as实现一个基础的推流器 151
7.3 SWFObject 156
7.3.1 为什么选择SWFObject 156
7.3.2 静态嵌入Flash Player 158
7.3.3 动态嵌入Flash Player 162
7.4 Flex与JavaScript的通信 167
7.4.1 Flex调用JavaScript函数 167
7.4.2 使用JavaScript调用Flex函数 168
7.4.3 使用JavaScript端获取SWF对象的引用 169
7.4.4 实例:使用SWFObject将Flash播放器嵌入网页中 170
7.5 播放器的制作 171
7.5.1 主要功能 171
7.5.2 相关变量 172
7.5.3 初始化视频画布 172
7.5.4 加载视频流并播放 172
7.5.5 高亮显示播放进度及缓冲进度 174
7.5.6 视频的播放与暂停 175
7.5.7 拖动滑块播放视频 176
7.5.8 播放结束处理 177
7.5.9 音量大小控制 177
7.5.10 全屏显示控制 178
7.5.11 流数据字符格式化 178
7.5.12 视频画面的平滑优化处理 179
7.5.13 播放接口的调用 179
7.5.14 实例:制作自定义播放器 180
7.6 Web端开发实战 185
7.6.1 推流 185
7.6.2 拉流 195
1.1 Nginx概述及作用 1
1.1.1 可作为Web服务器 1
1.1.2 可作为反向代理服务器 2
1.1.3 可作为邮件代理服务器 3
1.2 为什么选择Nginx 3
1.3 安装Nginx 4
1.3.1 选择安装版本 4
1.3.2 编译安装Nginx 5
1.3.3 配置防火墙 7
1.3.4 加入自启动和系统服务 9
1.3.5 加入系统变量 12
1.4 Nginx命令行 13
1.4.1 命令行参数 14
1.4.2 启动、停止和重启 15
1.4.3 信号控制 17
1.4.4 平滑升级 18
1.5 Nginx配置 19
1.5.1 配置命令 20
1.5.2 配置上下文 20
1.5.3 配置文件结构 21
1.5.4 配置变量 22
1.5.5 配置实例 23
1.6 Nginx模块化体系 25
1.6.1 模块概述 25
1.6.2 模块分类 26
1.7 本章小结 26
第2章 Nginx-rtmp-module基础 27
2.1 Nginx-rtmp-module介绍 27
2.2 RTMP协议与HLS协议 28
2.2.1 RTMP协议 28
2.2.2 HLS协议 29
2.3 NRM的搭建 34
2.4 搭建个直播系统 36
2.5 本章小结 40
第3章 Nginx-rtmp-module进阶 41
3.1 如何使NRM支持HLS协议直播 41
3.2 推/拉流与串流码 43
3.3 Control控制器 43
3.3.1 record命令 44
3.3.2 drop命令 47
3.3.3 redirect命令 47
3.4 数据统计模块 47
3.5 Exec相关功能 48
3.6 本章小结 48
第4章 Nginx-rtmp-module 应用 49
4.1 FFmpeg 49
4.1.1 FFmpeg的安装 51
4.1.2 FFmpeg的配置 54
4.1.3 FFmpeg与直播的应用 59
4.2 基础配置信息 59
4.3 本章小结 64
第5章 Android端解决方案 65
5.1 移动端视频直播介绍 65
5.2 Yasea框架介绍 66
5.3 IJKPlayer框架介绍 69
5.4 Android端开发实战 74
5.4.1 主要功能 75
5.4.2 框架导入 75
5.4.3 滤镜 77
5.4.4 推流 80
5.4.5 拉流 83
5.4.6 弹幕 90
5.5 本章小结 94
第6章 iOS端解决方案 95
6.1 iOS端视频直播介绍 95
6.2 SDK的选择和前期准备 96
6.3 GPUImage框架介绍 99
6.4 LFLiveKit框架介绍 103
6.5 IJKPlayer框架介绍 106
6.6 iOS端开发实战 110
6.6.1 主要功能 110
6.6.2 框架导入 111
6.6.3 滤镜 112
6.6.4 推流 116
6.6.5 拉流 121
6.6.6 点赞 126
6.6.7 弹幕 129
6.7 本章小结 132
第7章 Web端解决方案 133
7.1 Adobe Flash Player 133
7.1.1 Flash Player 134
7.1.2 为什么要使用Flash 134
7.2 ActionScript与Flex 135
7.2.1 Flex环境的搭建 135
7.2.2 Flex项目的创建 137
7.2.3 使用ActionScript组件 142
7.2.4 NetStream对象 148
7.2.5 获取视频流 149
7.2.6 实例:使用as实现一个基础的推流器 151
7.3 SWFObject 156
7.3.1 为什么选择SWFObject 156
7.3.2 静态嵌入Flash Player 158
7.3.3 动态嵌入Flash Player 162
7.4 Flex与JavaScript的通信 167
7.4.1 Flex调用JavaScript函数 167
7.4.2 使用JavaScript调用Flex函数 168
7.4.3 使用JavaScript端获取SWF对象的引用 169
7.4.4 实例:使用SWFObject将Flash播放器嵌入网页中 170
7.5 播放器的制作 171
7.5.1 主要功能 171
7.5.2 相关变量 172
7.5.3 初始化视频画布 172
7.5.4 加载视频流并播放 172
7.5.5 高亮显示播放进度及缓冲进度 174
7.5.6 视频的播放与暂停 175
7.5.7 拖动滑块播放视频 176
7.5.8 播放结束处理 177
7.5.9 音量大小控制 177
7.5.10 全屏显示控制 178
7.5.11 流数据字符格式化 178
7.5.12 视频画面的平滑优化处理 179
7.5.13 播放接口的调用 179
7.5.14 实例:制作自定义播放器 180
7.6 Web端开发实战 185
7.6.1 推流 185
7.6.2 拉流 195
评论
还没有评论。