幫助中心 | 我的帳號 | 關於我們

深入理解FFmpeg

  • 作者:劉歧//趙軍//杜金房//趙文傑//宋韶穎|責編:余潔
  • 出版社:人民郵電
  • ISBN:9787115621368
  • 出版日期:2023/11/01
  • 裝幀:平裝
  • 頁數:530
人民幣:RMB 139.8 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書詳細介紹了開源音視頻處理軟體FFmpeg的使用,按照所講述的內容及讀者的不同層次,本書劃分為上下兩篇。上篇為基礎與參數詳解,介紹了FFmpeg的基本組成部分、工具使用,以及封裝、轉碼、流媒體、濾鏡和設備操作。下篇為API使用及開發,介紹了FFmpeg封裝、編解碼和濾鏡部分的API使用操作,相關操作均以實例方式進行說明,包括新舊API的操作方法和異同,並給出了大量的API使用、自定義功能模塊、基於FFmpeg的API開發自己的播放器的示例,以及其在實際開源軟體中的應用等。
    本書不僅適合音視頻流媒體處理的研發人員、對音視頻技術應用和實時音視頻通信感興趣的技術人員,還適合高等院校電腦相關專業的學生閱讀。

作者介紹
劉歧//趙軍//杜金房//趙文傑//宋韶穎|責編:余潔

目錄
上篇  基礎與參數詳解
  第1章  多媒體基礎
    1.1  從現實世界到數字世界
      1.1.1  顏色和圖像
      1.1.2  電影、電視和視頻
      1.1.3  音頻
      1.1.4  音視頻封裝、傳輸和未來
    1.2  視頻圖像像素點的數據格式
      1.2.1  圖像的位深
      1.2.2  FourCC
      1.2.3  灰度模式表示
      1.2.4  YUV色彩表示
      1.2.5  RGB色彩表示
      1.2.6  HSL與HSV色彩表示
    1.3  視頻逐行和隔行掃描、NTSC與PAL制式
      1.3.1  逐行與隔行掃描
      1.3.2  NTSC制式
      1.3.3  PAL制式
    1.4  幀率、PTS和DTS
    1.5  圖像解析度與寬高比
    1.6  圖像的色彩空間
    1.7  音頻採樣數據格式
      1.7.1  聲道
      1.7.2  採樣率
      1.7.3  採樣位深
      1.7.4  帶寬計算
    1.8  小結
  第2章  FFmpeg簡介
    2.1  FFmpeg的發展歷史
    2.2  FFmpeg的基本組成
      2.2.1  封裝/解封裝模塊AVFormat
      2.2.2  編/解碼模塊AVCodec
      2.2.3  濾鏡模塊AVFilter
      2.2.4  設備模塊AVDevice
      2.2.5  圖像轉換模塊swscale
      2.2.6  音頻轉換模塊swresample
      2.2.7  編解碼工具ffmpeg
      2.2.8  播放器ffplay
      2.2.9  多媒體分析器ffprobe
    2.3  不同平台下的編譯
      2.3.1  Windows平台編譯FFmpeg
      2.3.2  Linux平台編譯FFmpeg
      2.3.3  macOS平台編譯FFmpeg
    2.4  FFmpeg特性的選擇與定製
      2.4.1  編碼器支持
      2.4.2  解碼器支持
      2.4.3  封裝支持
      2.4.4  解封裝支持
      2.4.5  通信協議支持
    2.5  小結

  第3章  FFmpeg工具使用基礎
    3.1  ffmpeg常用命令
      3.1.1  封裝轉換
      3.1.2  解碼和編碼
      3.1.3  轉碼流程
    3.2  ffprobe常用命令
      3.2.1  ffprobe常用參數
      3.2.2  ffprobe使用示例
    3.3  ffplay常用命令
      3.3.1  ffplay常用參數
      3.3.2  ffplay高級參數
      3.3.3  ffplay的數據可視化分析應用
      3.3.4  ffplay快捷鍵
    3.4  小結
  第4章  封裝與解封裝
    4.1  視頻文件轉MP4
      4.1.1  MP4格式標準介紹
      4.1.2  FragmentMP4與CMAF
      4.1.3  MP4分析工具
      4.1.4  MP4在FFmpeg中的Demuxer
      4.1.5  MP4在FFmpeg中的Muxer
    4.2  視頻文件轉FLV
      4.2.1  FLV文件標準介紹
      4.2.2  FLVMuxer參數說明
      4.2.3  文件轉FLV舉例
      4.2.4  生成帶關鍵索引的FLV
      4.2.5  FLV文件格式分析工具
    4.3  視頻文件轉MPEG-TS
      4.3.1  MPEG-TS格式簡介
      4.3.2  MPEG-TSMuxer參數說明
      4.3.3  MPEG-TS格式分析工具
    4.4  視頻文件轉HLS
      4.4.1  HLS標準的M3U8介紹
      4.4.2  HLSMuxer參數
      4.4.3  HLSMuxer舉例說明
    4.5  視頻文件切片
      4.5.1  segment切片參數
      4.5.2  segment切片舉例
      4.5.3  使用ss與t參數切片
    4.6  視頻文件的音視頻流抽取
      4.6.1  提取AAC音頻流
      4.6.2  提取H.264視頻流
      4.6.3  提取H.265視頻流
    4.7  系統資源使用情況
    4.8  小結
  第5章  編碼與轉碼
    5.1  軟編碼H.264
      5.1.1  x264編碼參數簡介
      5.1.2  H.264編碼舉例
    5.2  硬體加速

      5.2.1  基於OS的硬體加速方案簡介
      5.2.2  NVIDIAGPU硬編解碼
      5.2.3  IntelQSV硬編解碼
      5.2.4  RaspberryPi硬編解碼
      5.2.5  macOS系統硬編解碼
      5.2.6  其他加速方案簡介
    5.3  輸出MP3
      5.3.1  MP3編碼參數介紹
      5.3.2  MP3的編碼質量設置
      5.3.3  平均碼率編碼ABR參數
    5.4  輸出AAC
      5.4.1  AAC編碼器操作
      5.4.2  FDK-AAC
      5.4.3  高質量AAC設置
      5.4.4  AAC音頻質量對比
    5.5  系統資源使用情況
    5.6  小結
  第6章  流媒體技術
    6.1  錄製與發布RTMP流
      6.1.1  RTMP參數說明
      6.1.2  RTMP參數舉例
    6.2  錄製與發布RTSP流
      6.2.1  RTSPdemuxer參數介紹
      6.2.2  RTSPdemuxer參數使用舉例
      6.2.3  RTSPdemuxer/muxer的一些小說明
    6.3  錄製HTTP流
      6.3.1  HTTP參數說明
      6.3.2  HTTP參數舉例
    6.4  錄製與發布UDP/TCP流
      6.4.1  TCP與UDP參數
      6.4.2  TCP/UDP參數使用舉例
      6.4.3  TCP/UDP使用小結
    6.5  多路流輸出
      6.5.1  管道方式輸出多路流
      6.5.2  tee封裝格式輸出
      6.5.3  tee協議輸出多路流
    6.6  DASH流輸出
      6.6.1  參數介紹
      6.6.2  參數舉例
    6.7  HDS流輸出
      6.7.1  參數說明
      6.7.2  HDS使用舉例
    6.8  小結
  第7章  bitstream過濾器
    7.1  aac_adtstoasc過濾器
      7.1.1  ADTS格式
      7.1.2  ASC格式
    7.2  mp4toannexb過濾器
      7.2.1  AnnexB格式
      7.2.2  AVCC格式

      7.2.3  hevc_mp4toannexb/h264_mp4toannexb的使用
    7.3  h264_metadata過濾器
      7.3.1  h264_metadata參數說明
      7.3.2  h264_metadata參數舉例
      7.3.3  其他Codec的metadata過濾器
    7.4  其他常用bitstream過濾器
      7.4.1  dump_extra
      7.4.2  trace_headers
      7.4.3  filter_units
    7.5  小結
  第8章  濾鏡使用
    8.1  濾鏡表達式使用
    8.2  濾鏡描述格式
      8.2.1  濾鏡基本排列方式
      8.2.2  時間內置變數
    8.3  視頻水印操作
      8.3.1  文字水印示例
      8.3.2  圖片水印示例
    8.4  畫中畫操作
    8.5  視頻多宮格處理
    8.6  視頻字幕操作
      8.6.1  ASS字幕流寫入視頻流
      8.6.2  ASS字幕寫入封裝容器
    8.7  視頻3D化處理
      8.7.1  stereo3d處理3D視頻
      8.7.23  D圖像轉換示例
    8.8  視頻截圖操作
      8.8.1  vframes參數截取一張圖片
      8.8.2  fps濾鏡定時獲得圖片
    8.9  音頻流濾鏡操作
      8.9.1  雙聲道合併單聲道
      8.9.2  雙聲道提取
      8.9.3  雙聲道轉雙音頻流
      8.9.4  單聲道轉雙聲道
      8.9.5  兩個音頻源合併雙聲道
      8.9.6  多個音頻合併為多聲道
    8.10  音頻音量探測
      8.10.1  音頻音量獲得
      8.10.2  繪製音頻波形
    8.11  生成測試元數據
      8.11.1  生成音頻測試流
      8.11.2  生成視頻測試流
    8.12  音視頻倍速處理
      8.12.1  atempo音頻倍速處理
      8.12.2  setpts視頻倍速處理
    8.13  雲剪輯常用技術
      8.13.1  定格幀
      8.13.2  透明視頻兼容處理
      8.13.3  隔行交錯視頻兼容處理
      8.13.4  HDR視頻兼容處理

      8.13.5  雪碧圖和WebVTT
      8.13.6  縮略圖
      8.13.7  複雜項目渲染
      8.13.8  色度摳圖
      8.13.9  蒙版摳圖
      8.13.10  調色
      8.13.11  透明度調整
      8.13.12  動態縮放
      8.13.13  畫質檢測
      8.13.14  濾鏡動態調整
      8.13.15  深度學習
    8.14  小結
  第9章  採集設備操作
    9.1  Linux設備操作
      9.1.1  查看設備列表
      9.1.2  採集設備fbdev參數說明和使用
      9.1.3  採集設備v4l2參數說明和使用
      9.1.4  採集設備x11grab參數說明和使用
    9.2  macOS設備操作
      9.2.1  查看設備列表
      9.2.2  設備採集舉例
    9.3  Windows設備採集
      9.3.1  使用dshow採集音視頻設備
      9.3.2  使用vfwcap採集視頻設備
      9.3.3  使用gdigrab採集窗口
    9.4  小結
下篇  API使用及開發
  第10章  libavformat介面的使用
    10.1  媒體流封裝
    10.2  媒體流解封裝
    10.3  文件轉封裝
    10.4  視頻截取
    10.5  AVIO以及示例
    10.6  AVPacket常用操作
    10.7  小結
  第11章  libavcodec介面的使用
    11.1  舊介面的使用
      11.1.1  視頻解碼舊介面
      11.1.2  視頻編碼舊介面
      11.1.3  音頻解碼舊介面
      11.1.4  音頻編碼舊介面
    11.2  新介面的使用
      11.2.1  視頻解碼新介面
      11.2.2  視頻編碼新介面
      11.2.3  音頻解碼新介面
      11.2.4  音頻編碼新介面
    11.3  硬體加速的編解碼
      11.3.1  硬體加速解碼
      11.3.2  硬體加速編碼
    11.4  AVFrame操作

    11.5  內存操作
    11.6  小結
  第12章  libavfilter介面的使用
    12.1  Filter和FilterGraph簡述
    12.2  FFmpeg中內置的濾鏡
      12.2.1  音頻濾鏡
      12.2.2  視頻濾鏡
    12.3  libavfilter的API使用
    12.4  使用濾鏡給視頻加Logo
    12.5  小結
  第13章  FFmpeg輔助庫的使用
    13.1  libavutil的dict與opt操作
    13.2  libswscale的sws_scale圖像轉換
      13.2.1  圖像轉換流程
      13.2.2  代碼實例
    13.3  libswresample執行聲音轉換
      13.3.1  聲音轉換流程
      13.3.2  代碼實例
    13.4  小結
  第14章  音視頻播放器開發實例
    14.1  播放器開發概述
    14.2  SDL核心功能API介紹
      14.2.1  初始化SDL庫
      14.2.2  圖像渲染
    14.3  SDL音頻播放
      14.3.1  SDL事件循環
      14.3.2  SDL定時器
    14.4  播放器解碼和展示
      14.4.1  FFmpegPlayerCtx
      14.4.2  播放器設計
      14.4.3  事件循環線程
      14.4.4  demux線程
      14.4.5  視頻解碼線程
      14.4.6  音視頻同步
      14.4.7  音視頻擴展
    14.5  小結
  第15章  FFmpeg在RTC中的實例解析
    15.1  RTC的特點
      15.1.1  什麼是RTC
      15.1.2  RTC媒體傳輸
    15.2  FFmpeg在Chromium中的應用
      15.2.1  FFmpeg在ChromiumWebRTC中的應用
      15.2.2  FFmpeg在Chromium中的其他應用
    15.3  FFmpeg在FreeSWITCH中的應用
      15.3.1  FreeSWITCH簡介
      15.3.2  FreeSWITCH的FFmpeg模塊開發環境準備
      15.3.3  FFmpeg初始化和載入
      15.3.4  avcodec實例
      15.3.5  avformat實例
      15.3.6  其他

    15.4  FFmpeg在BareSIP中的應用
      15.4.1  AVCodec
      15.4.2  AVFormat
      15.4.3  AVFilter
    15.5  小結
  第16章  定製FFmpeg模塊
    16.1  添加AVFormat模塊
      16.1.1  book文件格式
      16.1.2  添加文件
      16.1.3  添加文件封裝格式
      16.1.4  添加文件解封裝格式
    16.2  添加AVCodec模塊
      16.2.1  book編解碼演算法定義
      16.2.2  實現book編碼
      16.2.3  實現book解碼
      16.2.4  將編解碼器註冊到FFmpeg並加入編譯工程
      16.2.5  運行測試
    16.3  添加AVFilter模塊
      16.3.1  添加基礎濾鏡
      16.3.2  支持多線程圖像處理
      16.3.3  支持圖像動態化的表達式
      16.3.4  支持process_command
    16.4  添加Protocol模塊
      16.4.1  添加新協議的消息結構
      16.4.2  回調函數
      16.4.3  編譯
      16.4.4  測試
    16.5  小結
  第17章  FFmpeg調試與測試
    17.1  自身的調試選項
      17.1.1  debug選項
      17.1.2  DTS/PTS問題的排查
    17.2  loglevel與report
      17.2.1  使用loglevel
      17.2.2  使用report
    17.3  在調用庫時的調試
      17.3.1  基於日誌
      17.3.2  基於帶調試信息庫
    17.4  給社區彙報Bug及提交補丁
      17.4.1  代碼風格
      17.4.2  給FFmpeg貢獻代碼
    17.5  小結

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032