日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【FFmpeg】FFmpeg 相关术语简介 ( 容器 | 媒体流 | 数据帧 | 数据包 | 编解码器 | 复用 | 解复用 )

發布時間:2025/6/17 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【FFmpeg】FFmpeg 相关术语简介 ( 容器 | 媒体流 | 数据帧 | 数据包 | 编解码器 | 复用 | 解复用 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、FFmpeg 簡介
  • 二、FFmpeg 相關術語
    • 1、容器
    • 2、媒體流
    • 3、數據幀
    • 4、數據包
    • 5、編解碼器
    • 6、復用
    • 7、解復用
  • 博客資源





一、FFmpeg 簡介


FFmpeg 是 " Fast Forward mpeg " 的縮寫 , 其符合 mpeg 視頻編碼標準 ;

FFmpeg 功能很強大 , 可以對音視頻進行 格式轉換 , 內容修改 , 等幾乎所有涉及音視頻的操作 ;

愛奇藝 , 優酷 , YouTube 等公司的音視頻產品 , 幾乎都是基于 FFmpeg 進行的二次開發 ;




二、FFmpeg 相關術語



1、容器


容器 Container : 容器的本質就是文件 , 是特定的視頻文件 , 如 mp4 , mkv , flv 等格式的音視頻文件 ;

容器的作用 : 容器中可以存放 音頻 , 視頻 , 字幕流 等信息 , 將這些信息整合在一起 , 按照特定規則放置在容器文件中 ,

使用 MediaInfo 打開一個 mp4 格式的視頻文件 , 在 " 容器格式和一般信息 " 一欄中 , 可以看到該 mp4 容器文件中包含了 111 個 AVC 視頻流 , 111 個 AAC LC 音頻流 ;

MediaInfo 工具在 http://mediaarea.net/en/MediaInfo 地址下載 , 或本博客的博客資源中下載 ;


2、媒體流


媒體流 ( Stream ) : 時間上的一段連續數據 , 一段聲音數據 稱為 音頻流 , 一段視頻數據 稱為 視頻流 , 一段字幕數據 稱為 字幕流 ;

這些媒體流數據 可以壓縮 , 也可以不壓縮 , 如視頻流以 H.264 格式進行壓縮 , 將視頻幀編碼成 關鍵幀 , 非關鍵幀 , 音頻流一般是 AAC 編碼格式進行壓縮 ;

媒體流如果是壓縮的 , 在播放時 , 先使用解碼器解碼 , 然后再播放 ; 生成文件時需要使用編碼器 , 編碼后存儲到文件中 ;


3、數據幀


數據幀 ( Data Frame ) : 媒體流 由 若干 數據幀構成 ; 壓縮格式中 , 數據幀是最小的處理單元 ;

在容器中如果有多個數據流 , 那么 視頻幀 , 音頻幀 , 字幕信息 , 交錯存儲 , 以保證實時性 ;

數據幀是未壓縮的原始數據 , 如 : 視頻幀每一幀都是一張完整的 YUV 圖片 , 音頻幀是 PCM 格式的 ;


4、數據包


數據包 ( Data Packet ) : 將 數據幀 壓縮后就是 數據包 , 數據幀是未壓縮的原始數據 , 數據包時壓縮后的數據 ;

生成容器文件時 , 壓縮數據 , 將數據幀 編碼壓縮 成 數據包 ;

播放容器文件時 , 解壓數據 , 將數據包 解碼展開 成 數據幀 ;


視頻編碼過程 : YUV 格式的圖像 -> H.264 編碼器編碼 -> H.264 視頻幀
視頻解碼過程 : H.264 視頻幀 -> H.264 解碼器解碼 -> YUV 格式的圖像

音頻數據編碼過程 : PCM 音頻數據 -> ACC 編碼器編碼 -> AAC 音頻幀
音頻數據解碼過程 : AAC 音頻幀 -> AAC 解碼器解碼 -> PCM 音頻數據


5、編解碼器


編解碼器 ( Codec ) : 數據幀 ( 原始數據 ) 與 數據包 ( 壓縮數據 ) 之間的轉換工具 ;

數據幀 ( 原始數據 ) -> 編解碼器 ( 編碼 ) -> 數據包 ( 壓縮數據 )

數據包 ( 壓縮數據 ) -> 編解碼器 ( 解碼 ) -> 數據幀 ( 原始數據 )


6、復用


復用 ( Mux ) : 將不同的 媒體流流 , 按照一定規則放入容器 ;

音頻流 , 視頻流 , 字幕流 ,
按照一定規則
封裝到 容器 ( 視頻文件 ) 中 ;

復用的關鍵工具時 復用器 ( Muxer ) ;


7、解復用


解復用 ( Demux ) : 從容器中解析不同的流出來 ;

從 容器 ( 視頻文件 ) 中 ,
按照一定規則
拆分出 音頻流 , 視頻流 , 字幕流 ,

解復用的關鍵工具時 解復用器 ( Demuxer ) ;




博客資源

https://download.csdn.net/download/han1202012/19555927

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的【FFmpeg】FFmpeg 相关术语简介 ( 容器 | 媒体流 | 数据帧 | 数据包 | 编解码器 | 复用 | 解复用 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。