《直播系統開發:基於Nginx與Nginx-rtmp-module》是2019年1月電子工業出版社出版的圖書,作者是卓朗科技技術團隊。
書籍信息,內容簡介,圖書目錄,
書籍信息
作譯者:卓朗科技技術團隊
出版時間:2019-01千 字 數:267版次:01-01頁 數:212
開本:16開裝幀:I S B N :9787121351785
換版:
紙質書定價:¥69.0
內容簡介
本書是一本通俗易懂的直播系統開發入門書籍。通過本書讀者可以從零開始學習搭建直播系統。本書分為三部分,第一部分(第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