日韩精品 中文字幕 动漫,91亚洲午夜一区,在线不卡日本v一区v二区丶,久久九九国产精品自在现拍

注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)深入理解FFmpeg

深入理解FFmpeg

深入理解FFmpeg

定 價(jià):¥139.80

作 者: 劉歧 趙軍 杜金房 趙文杰 宋韶潁
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787115621368 出版時(shí)間: 2023-11-01 包裝: 平裝
開(kāi)本: 128開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)詳細(xì)介紹了開(kāi)源音視頻處理軟件FFmpeg的使用,按照所講述的內(nèi)容及讀者的不同層次,本書(shū)劃分為上下兩篇。上篇為基礎(chǔ)與參數(shù)詳解,介紹了FFmpeg的基本組成部分、工具使用,以及封裝、轉(zhuǎn)碼、流媒體、濾鏡和設(shè)備操作。下篇為API使用及開(kāi)發(fā),介紹了FFmpeg封裝、編解碼和濾鏡部分的API使用操作,相關(guān)操作均以實(shí)例方式進(jìn)行說(shuō)明,包括新舊API的操作方法和異同,并給出了大量的API使用、自定義功能模塊、基于FFmpeg的API開(kāi)發(fā)自己的播放器的示例,以及其在實(shí)際開(kāi)源軟件中的應(yīng)用等。本書(shū)不僅適合音視頻流媒體處理的研發(fā)人員、對(duì)音視頻技術(shù)應(yīng)用和實(shí)時(shí)音視頻通信感興趣的技術(shù)人員,還適合高等院校計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的學(xué)生閱讀。

作者簡(jiǎn)介

  劉歧快手音視頻首席架構(gòu)師、FFmpeg官方源代碼活躍維護(hù)者和推薦顧問(wèn)、FFmpeg GSoC Mentor、騰訊云TVP,擅長(zhǎng)音視頻流媒體技術(shù)、分布式流媒體系統(tǒng)設(shè)計(jì)和流媒體CDN系統(tǒng)開(kāi)發(fā),個(gè)人技術(shù)興趣領(lǐng)域廣泛,包括音視頻技術(shù)、操作系統(tǒng)、分布式系統(tǒng)、通信技術(shù)、嵌入式技術(shù)等,目前在快手負(fù)責(zé)音視頻基礎(chǔ)技術(shù)架構(gòu)升級(jí)與優(yōu)化。趙軍騰訊專(zhuān)家工程師、開(kāi)源愛(ài)好者。2018年成為FFmpeg maintainer,目前在騰訊云音視頻負(fù)責(zé)視頻云的編碼、系統(tǒng)優(yōu)化、媒體處理框架相關(guān)工作,曾在Intel DCG/NPG 負(fù)責(zé)基于FFmpeg以及Intel平臺(tái)上的視頻編碼/解碼/轉(zhuǎn)碼、視頻后處理、視頻分析的硬件加速等工作。杜金房煙臺(tái)小櫻桃科技創(chuàng)始人、騰訊云TVP、FreeSWITCH中文社區(qū)創(chuàng)始人,為FreeSWITCH開(kāi)源項(xiàng)目貢獻(xiàn)了大量代碼,包括其中的FFmpeg模塊(mod_av)、WebRTC和視頻會(huì)議MCU代碼等,著有《FreeSWITCH權(quán)威指南》《Kamailio實(shí)戰(zhàn)》。趙文杰好未來(lái)教育集團(tuán)資深架構(gòu)師、開(kāi)源流媒體系統(tǒng)SRS 作者成員,擅長(zhǎng)音視頻編解碼技術(shù)、流媒體直播技術(shù)、播放器開(kāi)發(fā)技術(shù)、客戶(hù)端技術(shù)等,已獲得多篇音視頻流媒體相關(guān)專(zhuān)利,曾任職于北京藍(lán)汛、海爾、搜狐暢游等公司。宋韶潁快手音視頻SDK工程師,擅長(zhǎng)音視頻編解碼技術(shù)、流媒體直播技術(shù),深度使用FFmpeg落地多個(gè)分布式轉(zhuǎn)碼系統(tǒng)、流媒體CDN系統(tǒng)、音視頻云編輯系統(tǒng),曾任職于北京藍(lán)汛、金山云等公司。

圖書(shū)目錄

上篇 基礎(chǔ)與參數(shù)詳解
第 1章 多媒體基礎(chǔ) 2
1.1 從現(xiàn)實(shí)世界到數(shù)字世界 2
1.1.1 顏色和圖像 2
1.1.2 電影、電視和視頻 4
1.1.3 音頻 6
1.1.4 音視頻封裝、傳輸和 未來(lái) 10
1.2 視頻圖像像素點(diǎn)的數(shù)據(jù)格式 10
1.2.1 圖像的位深 10
1.2.2 FourCC 11
1.2.3 灰度模式表示 11
1.2.4 YUV色彩表示 11
1.2.5 RGB色彩表示 15
1.2.6 HSL與HSV色彩表示 18
1.3 視頻逐行和隔行掃描、NTSC與 PAL制式 19
1.3.1 逐行與隔行掃描 19
1.3.2 NTSC制式 20
1.3.3 PAL制式 21
1.4 幀率、PTS和DTS 22
1.5 圖像分辨率與寬高比 22
1.6 圖像的色彩空間 23
1.7 音頻采樣數(shù)據(jù)格式 24
1.7.1 聲道 25
1.7.2 采樣率 26
1.7.3 采樣位深 27
1.7.4 帶寬計(jì)算 28
1.8 小結(jié) 28
第 2章 FFmpeg簡(jiǎn)介 29
2.1 FFmpeg的發(fā)展歷史 29
2.2 FFmpeg的基本組成 31
2.2.1 封裝/解封裝模塊 AVFormat 32
2.2.2 編/解碼模塊AVCodec 32
2.2.3 濾鏡模塊AVFilter 32
2.2.4 設(shè)備模塊AVDevice 33
2.2.5 圖像轉(zhuǎn)換模塊swscale 34
2.2.6 音頻轉(zhuǎn)換模塊 swresample 34
2.2.7 編解碼工具ffmpeg 34
2.2.8 播放器ffplay 35
2.2.9 多媒體分析器ffprobe 35
2.3 不同平臺(tái)下的編譯 35
2.3.1 Windows平臺(tái)編譯 FFmpeg 36
2.3.2 Linux平臺(tái)編譯 FFmpeg 37
2.3.3 macOS平臺(tái)編譯 FFmpeg 38
2.4 FFmpeg特性的選擇與定制 38
2.4.1 編碼器支持 40
2.4.2 解碼器支持 41
2.4.3 封裝支持 41
2.4.4 解封裝支持 42
2.4.5 通信協(xié)議支持 42
2.5 小結(jié) 43
第3章 FFmpeg工具使用基礎(chǔ) 44
3.1 ffmpeg常用命令 44
3.1.1 封裝轉(zhuǎn)換 46
3.1.2 解碼和編碼 47
3.1.3 轉(zhuǎn)碼流程 48
3.2 ffprobe常用命令 49
3.2.1 ffprobe常用參數(shù) 49
3.2.2 ffprobe使用示例 51
3.3 ffplay常用命令 58
3.3.1 ffplay常用參數(shù) 59
3.3.2 ffplay高級(jí)參數(shù) 60
3.3.3 ffplay的數(shù)據(jù)可視化分析 應(yīng)用 63
3.3.4 ffplay快捷鍵 65
3.4 小結(jié) 65
第4章 封裝與解封裝 66
4.1 視頻文件轉(zhuǎn)MP4 67
4.1.1 MP4格式標(biāo)準(zhǔn)介紹 68
4.1.2 Fragment MP4與CMAF 89
4.1.3 MP4分析工具 91
4.1.4 MP4在FFmpeg中的 Demuxer 94
4.1.5 MP4在FFmpeg中的 Muxer 95
4.2 視頻文件轉(zhuǎn)FLV 99
4.2.1 FLV文件標(biāo)準(zhǔn)介紹 99
4.2.2 FLV Muxer參數(shù)說(shuō)明 104
4.2.3 文件轉(zhuǎn)FLV舉例 104
4.2.4 生成帶關(guān)鍵索引的 FLV 105
4.2.5 FLV文件格式分析 工具 106
4.3 視頻文件轉(zhuǎn)MPEG-TS 107
4.3.1 MPEG-TS格式簡(jiǎn)介 109
4.3.2 MPEG-TS Muxer參數(shù) 說(shuō)明 113
4.3.3 MPEG-TS格式分析 工具 114
4.4 視頻文件轉(zhuǎn)HLS 115
4.4.1 HLS標(biāo)準(zhǔn)的M3U8 介紹 116
4.4.2 HLS Muxer參數(shù) 119
4.4.3 HLS Muxer舉例說(shuō)明 119
4.5 視頻文件切片 128
4.5.1 segment切片參數(shù) 128
4.5.2 segment切片舉例 129
4.5.3 使用ss與t參數(shù)切片 132
4.6 視頻文件的音視頻流抽取 133
4.6.1 提取AAC音頻流 133
4.6.2 提取H.264視頻流 134
4.6.3 提取H.265視頻流 134
4.7 系統(tǒng)資源使用情況 135
4.8 小結(jié) 136
第5章 編碼與轉(zhuǎn)碼 137
5.1 軟編碼H.264 138
5.1.1 x264編碼參數(shù)簡(jiǎn)介 139
5.1.2 H.264編碼舉例 141
5.2 硬件加速 154
5.2.1 基于OS的硬件加速方案 簡(jiǎn)介 155
5.2.2 NVIDIA GPU硬編 解碼 163
5.2.3 Intel QSV硬編解碼 165
5.2.4 Raspberry Pi硬編解碼 170
5.2.5 macOS系統(tǒng)硬編解碼 171
5.2.6 其他加速方案簡(jiǎn)介 173
5.3 輸出MP3 173
5.3.1 MP3編碼參數(shù)介紹 174
5.3.2 MP3的編碼質(zhì)量設(shè)置 174
5.3.3 平均碼率編碼ABR 參數(shù) 176
5.4 輸出AAC 176
5.4.1 AAC編碼器操作 178
5.4.2 FDK-AAC 179
5.4.3 高質(zhì)量AAC設(shè)置 182
5.4.4 AAC音頻質(zhì)量對(duì)比 182
5.5 系統(tǒng)資源使用情況 182
5.6 小結(jié) 183
第6章 流媒體技術(shù) 184
6.1 錄制與發(fā)布RTMP流 185
6.1.1 RTMP參數(shù)說(shuō)明 186
6.1.2 RTMP參數(shù)舉例 187
6.2 錄制與發(fā)布RTSP流 189
6.2.1 RTSP demuxer參數(shù) 介紹 190
6.2.2 RTSP demuxer參數(shù)使用 舉例 191
6.2.3 RTSP demuxer/muxer的 一些小說(shuō)明 193
6.3 錄制HTTP流 194
6.3.1 HTTP參數(shù)說(shuō)明 194
6.3.2 HTTP參數(shù)舉例 195
6.4 錄制與發(fā)布UDP/TCP流 197
6.4.1 TCP與UDP參數(shù) 197
6.4.2 TCP/UDP參數(shù)使用 舉例 198
6.4.3 TCP/UDP使用小結(jié) 201
6.5 多路流輸出 202
6.5.1 管道方式輸出多路流 202
6.5.2 tee封裝格式輸出 202
6.5.3 tee協(xié)議輸出多路流 203
6.6 DASH流輸出 204
6.6.1 參數(shù)介紹 205
6.6.2 參數(shù)舉例 205
6.7 HDS流輸出 206
6.7.1 參數(shù)說(shuō)明 206
6.7.2 HDS使用舉例 207
6.8 小結(jié) 208
第7章 bitstream過(guò)濾器 209
7.1 aac_adtstoasc過(guò)濾器 210
7.1.1 ADTS格式 210
7.1.2 ASC格式 211
7.2 mp4toannexb過(guò)濾器 212
7.2.1 Annex B格式 213
7.2.2 AVCC格式 213
7.2.3 hevc_mp4toannexb/h264_ mp4toannexb的使用 214
7.3 h264_metadata過(guò)濾器 215
7.3.1 h264_metadata參數(shù)說(shuō)明  216
7.3.2 h264_metadata參數(shù)舉例  216
7.3.3 其他Codec的metadata 過(guò)濾器 221
7.4 其他常用bitstream過(guò)濾器 221
7.4.1 dump_extra 221
7.4.2 trace_headers 222
7.4.3 filter_units 223
7.5 小結(jié) 225
第8章 濾鏡使用 226
8.1 濾鏡表達(dá)式使用 226
8.2 濾鏡描述格式 229
8.2.1 濾鏡基本排列方式 229
8.2.2 時(shí)間內(nèi)置變量 229
8.3 視頻水印操作 229
8.3.1 文字水印示例 229
8.3.2 圖片水印示例 232
8.4 畫(huà)中畫(huà)操作 233
8.5 視頻多宮格處理 235
8.6 視頻字幕操作 237
8.6.1 ASS字幕流寫(xiě)入視頻流  237
8.6.2 ASS字幕寫(xiě)入封裝容器  238
8.7 視頻3D化處理 239
8.7.1 stereo3d處理3D視頻 239
8.7.2 3D圖像轉(zhuǎn)換示例 241
8.8 視頻截圖操作 242
8.8.1 vframes參數(shù)截取一張圖片  242
8.8.2 fps濾鏡定時(shí)獲得圖片 242
8.9 音頻流濾鏡操作 243
8.9.1 雙聲道合并單聲道 243
8.9.2 雙聲道提取 243
8.9.3 雙聲道轉(zhuǎn)雙音頻流 244
8.9.4 單聲道轉(zhuǎn)雙聲道 244
8.9.5 兩個(gè)音頻源合并雙聲道 245
8.9.6 多個(gè)音頻合并為多聲道  245
8.10 音頻音量探測(cè) 246
8.10.1 音頻音量獲得 246
8.10.2 繪制音頻波形 247
8.11 生成測(cè)試元數(shù)據(jù) 248
8.11.1 生成音頻測(cè)試流 248
8.11.2 生成視頻測(cè)試流 248
8.12 音視頻倍速處理 250
8.12.1 atempo音頻倍速處理 250
8.12.2 setpts視頻倍速處理 251
8.13 云剪輯常用技術(shù) 252
8.13.1 定格幀 252
8.13.2 透明視頻兼容處理 252
8.13.3 隔行交錯(cuò)視頻兼容處理  253
8.13.4 HDR視頻兼容處理 254
8.13.5 雪碧圖和WebVTT 255
8.13.6 縮略圖 256
8.13.7 復(fù)雜項(xiàng)目渲染 256
8.13.8 色度摳圖 257
8.13.9 蒙版摳圖 258
8.13.10 調(diào)色 259
8.13.11 透明度調(diào)整 259
8.13.12 動(dòng)態(tài)縮放 260
8.13.13 畫(huà)質(zhì)檢測(cè) 260
8.13.14 濾鏡動(dòng)態(tài)調(diào)整 262
8.13.15 深度學(xué)習(xí) 262
8.14 小結(jié) 264
第9章 采集設(shè)備操作 265
9.1 Linux設(shè)備操作 265
9.1.1 查看設(shè)備列表 265
9.1.2 采集設(shè)備fbdev參數(shù)說(shuō)明 和使用 266
9.1.3 采集設(shè)備v4l2參數(shù)說(shuō)明 和使用 266
9.1.4 采集設(shè)備x11grab參數(shù) 說(shuō)明和使用 268
9.2 macOS設(shè)備操作 269
9.2.1 查看設(shè)備列表 270
9.2.2 設(shè)備采集舉例 270
9.3 Windows設(shè)備采集 273
9.3.1 使用dshow采集音視頻 設(shè)備 273
9.3.2 使用vfwcap采集視頻 設(shè)備 274
9.3.3 使用gdigrab采集窗口 274
9.4 小結(jié) 276
下篇 API使用及開(kāi)發(fā)
第 10章 libavformat接口的使用 279
10.1 媒體流封裝 281
10.2 媒體流解封裝 284
10.3 文件轉(zhuǎn)封裝 288
10.4 視頻截取 290
10.5 AVIO以及示例 292
10.6 AVPacket常用操作 296
10.7 小結(jié) 300
第 11章 libavcodec接口的使用 301
11.1 舊接口的使用 302
11.1.1 視頻解碼舊接口 303
11.1.2 視頻編碼舊接口 306
11.1.3 音頻解碼舊接口 308
11.1.4 音頻編碼舊接口 310
11.2 新接口的使用 311
11.2.1 視頻解碼新接口 312
11.2.2 視頻編碼新接口 315
11.2.3 音頻解碼新接口 318
11.2.4 音頻編碼新接口 320
11.3 硬件加速的編解碼 322
11.3.1 硬件加速解碼 323
11.3.2 硬件加速編碼 327
11.4 AVFrame操作 329
11.5 內(nèi)存操作 335
11.6 小結(jié) 337
第 12章 libavfilter接口的使用 338
12.1 Filter和FilterGraph簡(jiǎn)述 338
12.2 FFmpeg中內(nèi)置的濾鏡 340
12.2.1 音頻濾鏡 340
12.2.2 視頻濾鏡 345
12.3 libavfilter的API使用 354
12.4 使用濾鏡給視頻加Logo 356
12.5 小結(jié) 360
第 13章 FFmpeg輔助庫(kù)的使用 361
13.1 libavutil的dict與opt操作 361
13.2 libswscale的sws_scale圖像 轉(zhuǎn)換 368
13.2.1 圖像轉(zhuǎn)換流程 368
13.2.2 代碼實(shí)例 370
13.3 libswresample執(zhí)行聲音轉(zhuǎn)換 374
13.3.1 聲音轉(zhuǎn)換流程 374
13.3.2 代碼實(shí)例 376
13.4 小結(jié) 379
第 14章 音視頻播放器開(kāi)發(fā)實(shí)例 380
14.1 播放器開(kāi)發(fā)概述 380
14.2 SDL核心功能API介紹 381
14.2.1 初始化SDL庫(kù) 381
14.2.2 圖像渲染 381
14.3 SDL音頻播放 387
14.3.1 SDL事件循環(huán) 389
14.3.2 SDL定時(shí)器 391
14.4 播放器解碼和展示 392
14.4.1 FFmpegPlayerCtx 393
14.4.2 播放器設(shè)計(jì) 395
14.4.3 事件循環(huán)線(xiàn)程 399
14.4.4 demux線(xiàn)程 400
14.4.5 視頻解碼線(xiàn)程 408
14.4.6 音視頻同步 412
14.4.7 音視頻擴(kuò)展 417
14.5 小結(jié) 417
第 15章 FFmpeg在RTC中的實(shí)例解析 418
15.1 RTC的特點(diǎn) 418
15.1.1 什么是RTC 418
15.1.2 RTC媒體傳輸 419
15.2 FFmpeg在Chromium中的應(yīng)用 421
15.2.1 FFmpeg在Chromium WebRTC中的應(yīng)用 422
15.2.2 FFmpeg在Chromium中的其他應(yīng)用 428
15.3 FFmpeg在FreeSWITCH中的應(yīng)用 433
15.3.1 FreeSWITCH簡(jiǎn)介 433
15.3.2 FreeSWITCH的FFmpeg 模塊開(kāi)發(fā)環(huán)境準(zhǔn)備 434
15.3.3 FFmpeg初始化和加載  436
15.3.4 avcodec實(shí)例 436
15.3.5 avformat實(shí)例 447
15.3.6 其他 468
15.4 FFmpeg在BareSIP中的應(yīng)用  469
15.4.1 AVCodec 469
15.4.2 AVFormat 480
15.4.3 AVFilter 489
15.5 小結(jié) 494
第 16章 定制FFmpeg模塊 495
16.1 添加AVFormat模塊 496
16.1.1 book文件格式 496
16.1.2 添加文件 497
16.1.3 添加文件封裝格式 497
16.1.4 添加文件解封裝格式 502
16.2 添加AVCodec模塊 505
16.2.1 book編解碼算法定義 505
16.2.2 實(shí)現(xiàn)book編碼 505
16.2.3 實(shí)現(xiàn)book解碼 507
16.2.4 將編解碼器注冊(cè)到FFmpeg 并加入編譯工程 508
16.2.5 運(yùn)行測(cè)試 509
16.3 添加AVFilter模塊 509
16.3.1 添加基礎(chǔ)濾鏡 509
16.3.2 支持多線(xiàn)程圖像處理  512
16.3.3 支持圖像動(dòng)態(tài)化的表達(dá)式 513
16.3.4 支持process_command 515
16.4 添加Protocol模塊 516
16.4.1 添加新協(xié)議的消息結(jié)構(gòu) 516
16.4.2 回調(diào)函數(shù) 517
16.4.3 編譯 518
16.4.4 測(cè)試 519
16.5 小結(jié) 519
第 17章 FFmpeg調(diào)試與測(cè)試 520
17.1 自身的調(diào)試選項(xiàng) 520
17.1.1 debug選項(xiàng) 520
17.1.2 DTS/PTS問(wèn)題的排查 521
17.2 loglevel與report  522
17.2.1 使用loglevel 522
17.2.2 使用report 523
17.3 在調(diào)用庫(kù)時(shí)的調(diào)試 523
17.3.1 基于日志 524
17.3.2 基于帶調(diào)試信息庫(kù) 524
17.4 給社區(qū)匯報(bào)Bug及提交補(bǔ)丁 525
17.4.1 代碼風(fēng)格 525
17.4.2 給FFmpeg貢獻(xiàn)代碼 528
17.5 小結(jié) 530

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) rgspecialties.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)