FFmpeg(編解碼框架) v6.0 官方版
FFmpeg 是領(lǐng)先的多媒體框架,能夠解碼、編碼、轉(zhuǎn)碼、混合、解密、流媒體、過濾和播放人類和機(jī)器創(chuàng)造的幾乎所有東西。在許多項(xiàng)目中都有FFmpeg的身影,比如你正在使用的瀏覽器。
FFmpeg 是開源免費(fèi)跨平臺(tái)的視頻和音頻流方案,屬于自由軟件,采用LGPL或GPL許可證(依據(jù)你選擇的組件)。
FFmpeg在Linux平臺(tái)下開發(fā),但它同樣也可以在其它操作系統(tǒng)環(huán)境中編譯運(yùn)行。
軟件組成:
1、libavformat:用于各種音視頻封裝格式的生成和解析,包括獲取解碼所需信息以生成解碼上下文結(jié)構(gòu)和讀取音視頻幀等功能,包含demuxers和muxer庫;
2、libavcodec:用于各種類型聲音/圖像編解碼;
3、libavutil:包含一些公共的工具函數(shù);
4、libswscale:用于視頻場(chǎng)景比例縮放、色彩映射轉(zhuǎn)換;
5、libpostproc:用于后期效果處理;
6、ffmpeg:是一個(gè)命令行工具,用來對(duì)視頻文件轉(zhuǎn)換格式,也支持對(duì)電視卡實(shí)時(shí)編碼;
7、ffsever:是一個(gè)HTTP多媒體實(shí)時(shí)廣播流服務(wù)器,支持時(shí)光平移;
8、ffplay:是一個(gè)簡單的播放器,使用ffmpeg 庫解析和解碼,通過SDL顯示;
使用示例
1 音頻轉(zhuǎn)換
ffmpeg -i my_audio.wav my_audio.mp3-i 后為要轉(zhuǎn)換的音頻文件,my_audio.mp3為目的音頻文件
2 視頻轉(zhuǎn)換
ffmpeg -i my_video.mpeg -s 500×500 my_video.flv-i 后為源視頻文件, -s 表示設(shè)置目標(biāo)視頻文件的分辨率 my_video.flv為目的視頻文件
3 從視頻中截取圖片
ffmpeg -i test.mpg image%d.jpg默認(rèn)1s截取25張圖片,可以通過-r設(shè)置每秒截取的圖片數(shù)量
-r fps 設(shè)置幀率,也就是每秒截取圖片的數(shù)量(默認(rèn)25)
ffmpeg -i test.mpg -r 1 image%d.jpg這樣子每1s截取1張圖片
還可以設(shè)置截取間隔,起止
-ss 設(shè)定時(shí)間位置,語法:hh:mm:ss[.xxx]
-t 時(shí)長:限制轉(zhuǎn)碼/捕獲視頻的時(shí)間,語法:hh:mm:ss[.xxx]
ffmpeg -i test.mpg -r 25 -ss 00:00:10 -t 00:00:05 images%05d.png在第10秒開始,以每秒截取25張圖片的速度,截取5秒時(shí)長的圖片
4 從視頻中采集音頻
ffmpeg -i video.avi -f mp3 audio.mp3-f 強(qiáng)制選擇格式
ffmpeg -i video.avi -vn audio.mp3-vn 取消截取視頻(也就是只輸出音頻文件)
5 創(chuàng)建截屏視頻
ffmpeg -f x11grab -r 25 -s wxga -i :0.0 /tmp/outputFile.mpg0.0 是你X11 server的屏幕顯示號(hào)嗎,和DISPLAY一樣樣的.
此條命令以每秒25幀的速率來截取wxga屏幕視頻,當(dāng)然這里可以用-s 來設(shè)置視頻分辨率,輸出文件是/tmp/outputFile.mpg
6 用圖片制作視頻
ffmpeg -f image2 -i img%d.jpg /tmp/a.mpg
將`img001.jpg’, `img002.jpg'這種順序排列的圖片文件轉(zhuǎn)制作為視頻
7 從webcam中截取視頻
ffmpeg -f video4linux2 -s 320x240 -i /dev/video0 out.mpg
同時(shí)截取音頻和視頻:
ffmpeg -f oss -i /dev/dsp -f video4linux2 -s 320x240 -i /dev/video0 out.mpg
/dev/video0為視頻設(shè)備 /dev/dsp為音頻設(shè)備
軟件截圖

下載地址:https://www.kunkunwu.com/post/2536.html