轉自:http://www.hellotongtong.com/avwelcome/avbase-ffmpeg-intro.html
視訊課程:https://edu.51cto.com/sd/5f2f3
FFmpeg簡介
ffmpeg是一個跨平台的音視訊處理庫,為了跨平台那麼就需要編譯出适用于各個平台的ffmpeg庫。
一般在windows平台下會進行windows開發和安卓開發,是以本文的目的就是在windows平台下編譯用于windows和安卓使用的ffmpeg庫
FFmpeg是一套可以用來記錄、轉換數字音頻、視訊,并能将其轉化為流的開源計算機程式。采用LGPL或GPL許可證。它提供了錄制、轉換以及流化音視訊的完整解決方案。它包含了非常先進的音頻/視訊編解碼庫libavcodec,為了保證高可移植性和編解碼品質,libavcodec裡很多code都是從頭開發的。
好文章,來自【福優學苑@音視訊+流媒體】
FFmpeg是一套可以用來記錄、轉換數字音頻、視訊,并能将其轉化為流的開源計算機程式。它包括了領先的音/視訊編碼庫libavcodec等。
libavformat:用于各種音視訊封裝格式的生成和解析,包括擷取解碼所需資訊以生成解碼上下文結構
和讀取音視訊幀等功能;
libavcodec:用于各種類型聲音/圖像編解碼;
libavutil:包含一些公共的工具函數;
libswscale:用于視訊場景比例縮放、色彩映射轉換;
libpostproc:用于後期效果處理;
ffmpeg:該項目提供的一個工具,可用于格式轉換、解碼或電視卡即時編碼等;
ffsever:一個 HTTP 多媒體即時廣播串流伺服器;
ffplay:是一個簡單的播放器,使用ffmpeg 庫解析和解碼,通過SDL顯示;
官網介紹FFMPEG是一個多媒體架構,其包含了多個子產品庫:AVFormat,AVCodec,AVFilter,AVDivice,AVUtil等,并且提供了基于這些庫的三個指令行工具: ffmpeg,ffplay,ffprobe。
一種方式是直接使用ffmpeg提供的這三個指令行工具來進行多媒體處理;
另一種是使用ffmpeg封裝的這些庫進行二次開發。
列出支援的格式
剪切一段媒體檔案
提取一個視訊檔案中的音頻檔案
從 MP4檔案中抽取視訊流導出為裸的 H264資料
視訊靜音,即隻保留視訊
使用 AAC 音頻資料和 H264視訊生成 MP4檔案
音頻格式轉換
從 WAV 音頻檔案中到處 PCM 裸資料
将一個 MP4的檔案轉換為一個 GIF 動圖
使用一組圖檔生成 gif
淡入效果器使用
淡出效果器使用
将兩路聲音合并,比如加背景音樂
為視訊添加水印效果
視訊提亮效果器
視訊旋轉效果器的使用
視訊裁剪效果器的使用
将一段視訊推送到流媒體伺服器上
将流媒體伺服器上的流dump到本地
将兩個音頻檔案以兩路流的形式封裝到一個檔案中