天天看點

【FFMPEG】FFMPEG介紹

FFmpeg是一套可以用來記錄、轉換數字音頻、視訊,并能将其轉化為流的開源計算機程式。它包括了目前領先的音/視訊編碼庫libavcodec。 FFmpeg是在Linux下開發出來的,但它可以在包括Windows在内的大多數作業系統中編譯。這個項目是由Fabrice Bellard發起的,現在由Michael Niedermayer主持。可以輕易地實作多種視訊格式之間的互相轉換,例如可以将攝錄下的視訊avi等轉成現在視訊網站所采用的flv格式。

FFmpeg在Linux平台下開發,但它同樣也可以在其它作業系統環境中編譯運作,包括Windows、Mac OS X等。

FFmpeg's Logo這個項目最早由Fabrice Bellard發起,現在由Michael Niedermayer維護。許多FFmpeg的開發人員都來自MPlayer項目,而且目前FFmpeg也是放在MPlayer項目組的伺服器上。項目的名稱來自MPEG視訊編碼标準,前面的"FF"代表"Fast Forward"。

【FFMPEG】FFMPEG介紹

視訊采集功能

FFmpeg是在Linux下開發出來的,但它可以在包括Windows在内的大多數作業系統中編譯。這個項目是由Fabrice Bellard發起的,現在由Michael Niedermayer主持。

ffmpeg視訊采集功能非常強大,不僅可以采集視訊采集卡或USB攝像頭的圖像,還可以進行螢幕錄制,同時還支援以RTP方式将視訊流傳送給支援RTSP的流媒體伺服器,支援直播應用。

ffmpeg在Linux下的視訊采集

在Linux平台上,ffmpeg對V4L2的視訊裝置提高了很好的支援,如:

./ffmpeg -t 10 -f video4linux2 -s 176*144 -r 8 -i /dev/video0 -vcodec h263 -f rtp rtp://192.168.1.105:5060 > /tmp/ffmpeg.sdp

以上指令表示:采集10秒鐘視訊,對video4linux2視訊裝置進行采集,采集QCIF(176*144)的視訊,每秒8幀,視訊裝置為/dev/video0,視訊編碼為h263,輸出格式為RTP,後面定義了IP位址及端口,将該碼流所對應的SDP檔案重定向到/tmp/ffmpeg.sdp中,将此SDP檔案上傳到流媒體伺服器就可以實作直播了。

ffmpeg在windows下的視訊采集

在windows下關于ffmpeg視訊采集的資料非常少,但是ffmpeg還是支援windows下視訊采集的。ffmpeg支援windows下video for windows(VFW)裝置的視訊采集,不過VFW裝置已經過時,正在被WDM的視訊裝置所取代,但是ffmpeg還沒有支援WDM的計劃,不過好像有将WDM轉為VFW的工具,是以ffmpeg還是可以在windows下進行視訊采集的。

視訊格式轉換功能

ffmpeg視訊轉換功能。視訊格式轉換,比如可以将多種視訊格式轉換為flv格式,可不是視訊信号轉換 。

ffmpeg可以輕易地實作多種視訊格式之間的互相轉換(wma,rm,avi,mod等),例如可以将攝錄下的視訊avi等轉成現在視訊網站所采用的flv格式。

視訊截圖功能

對于標明的視訊,截取指定時間的縮略圖。視訊抓圖,擷取靜态圖和動态圖,不提倡抓gif檔案;因為抓出的gif檔案大而播放不流暢

給視訊加水印功能

使用ffmpeg 視訊添加水印(logo)。

推薦閱讀:

Linux下編譯FFmpeg之下載下傳源檔案并編譯 http://www.linuxidc.com/Linux/2012-02/54565.htm

Linux 編譯更新 FFmpeg 步驟 http://www.linuxidc.com/Linux/2013-08/88190.htm

Ubuntu 10.10下編譯FFmpeg  http://www.linuxidc.com/Linux/2012-12/76160.htm

Ubuntu 安裝FFmpeg1.0 , OpenCV2.4.2  http://www.linuxidc.com/Linux/2012-12/75641.htm

Ubuntu 10.10 64bit下使用Android NDK r6編譯FFmpeg 0.8.1  http://www.linuxidc.com/Linux/2012-12/76161.htm

繼續閱讀