新聞中心
FFmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開源計(jì)算機(jī)程序。采用LGPL或GPL許可證。它提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案。下面記錄在centos 7.5下FFmpeg安裝、簡單使用的總結(jié),希望對(duì)大家有所幫助。

創(chuàng)新互聯(lián)從2013年創(chuàng)立,先為管城等服務(wù)建站,管城等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為管城企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
FFmpeg 還是非常好用的,簡單一點(diǎn)的可以進(jìn)行視頻的裁剪與壓縮。高級(jí)些的還可以合并視頻等。
1、Linux系統(tǒng)
CentOS 7.5
2、安裝
安裝EPEL Release,因?yàn)榘惭b需要使用其他的repo源,所以需要EPEL支持
安裝Nux-Dextop源
安裝ffmpeg
3、應(yīng)用
格式轉(zhuǎn)換
把a(bǔ)vi格式轉(zhuǎn)換為mp4格式,輸入壓縮的尺寸,使用h264進(jìn)行壓縮。
轉(zhuǎn)換結(jié)果
將一張jpg圖片轉(zhuǎn)為MP4格式視頻
【FFmpeg】FFmpeg常用基本命令
1.分離視頻音頻流
2.視頻解復(fù)用
3.視頻轉(zhuǎn)碼
//-bf B幀數(shù)目控制,-g 關(guān)鍵幀間隔控制,-s 分辨率控制
4.視頻封裝
ffmpeg –i video_file –i audio_file –vcodec copy –acodec copy linuxdc_file
5.視頻剪切
//-r 提取圖像的頻率,-ss 開始時(shí)間,-t 持續(xù)時(shí)間
6.視頻錄制
7.YUV序列播放
8.YUV序列轉(zhuǎn)AVI
常用參數(shù)說明:
主要參數(shù): -i 設(shè)定輸入流 -f 設(shè)定輸出格式 -ss 開始時(shí)間 視頻參數(shù): -b 設(shè)定視頻流量,默認(rèn)為200Kbit/s -r 設(shè)定幀速率,默認(rèn)為25 -s 設(shè)定畫面的寬與高 -aspect 設(shè)定畫面的比例 -vn 不處理視頻 -vcodec 設(shè)定視頻編解碼器,未設(shè)定時(shí)則使用與輸入流相同的編解碼器 音頻參數(shù): -ar 設(shè)定采樣率 -ac 設(shè)定聲音的Channel數(shù) -acodec 設(shè)定聲音編解碼器,未設(shè)定時(shí)則使用與輸入流相同的編解碼器 -an 不處理音頻
------------------------------------------------------------------------
0.壓縮轉(zhuǎn)碼mp4文件
1、將文件當(dāng)做直播送至live
ffmpeg -re -i localFile.mp4 -c copy -f flv rtmp://server/live/streamName
2、將直播媒體保存至本地文件
3、將其中一個(gè)直播流,視頻改用h264壓縮,音頻不變,送至另外一個(gè)直播服務(wù)流
ffmpeg -i rtmp://server/live/originalStream -c:a copy -c:v libx264 -vpre slow -f flv rtmp://server/live/h264Stream
4、將其中一個(gè)直播流,視頻改用h264壓縮,音頻改用faac壓縮,送至另外一個(gè)直播服務(wù)流
ffmpeg -i rtmp://server/live/originalStream -c:a libfaac -ar 44100 -ab 48k -c:v libx264 -vpre slow -vpre baseline -f flv rtmp://server/live/h264Stream
5、將其中一個(gè)直播流,視頻不變,音頻改用faac壓縮,送至另外一個(gè)直播服務(wù)流
ffmpeg -i rtmp://server/live/originalStream -acodec libfaac -ar 44100 -ab 48k -vcodec copy -f flv rtmp://server/live/h264_AAC_Stream
6、將一個(gè)高清流,復(fù)制為幾個(gè)不同視頻清晰度的流重新發(fā)布,其中音頻不變
ffmpeg -re -i rtmp://server/live/high_FMLE_stream -acodec copy -vcodec x264lib -s 640×360 -b 500k -vpre medium -vpre baseline rtmp://server/live/baseline_500k -acodec copy -vcodec x264lib -s 480×272 -b 300k -vpre medium -vpre baseline rtmp://server/live/baseline_300k -acodec copy -vcodec x264lib -s 320×200 -b 150k -vpre medium -vpre baseline rtmp://server/live/baseline_150k -acodec libfaac -vn -ab 48k rtmp://server/live/audio_only_AAC_48k
7、功能一樣,只是采用-x264opts選項(xiàng)
ffmpeg -re -i rtmp://server/live/high_FMLE_stream -c:a copy -c:v x264lib -s 640×360 -x264opts bitrate=500:profile=baseline:preset=slow rtmp://server/live/baseline_500k -c:a copy -c:v x264lib -s 480×272 -x264opts bitrate=300:profile=baseline:preset=slow rtmp://server/live/baseline_300k -c:a copy -c:v x264lib -s 320×200 -x264opts bitrate=150:profile=baseline:preset=slow rtmp://server/live/baseline_150k -c:a libfaac -vn -b:a 48k rtmp://server/live/audio_only_AAC_48k
8、將當(dāng)前攝像頭及音頻通過DSSHOW采集,視頻h264、音頻faac壓縮后發(fā)布
ffmpeg -r 25 -f dshow -s 640×480 -i video=”video source name”:audio=”audio source name” -vcodec libx264 -b 600k -vpre slow -acodec libfaac -ab 128k -f flv rtmp://server/application/stream_name
9、將一個(gè)JPG圖片經(jīng)過h264壓縮循環(huán)輸出為mp4視頻
10、將普通流視頻改用h264壓縮,音頻不變,送至高清流服務(wù)(新版本FMS live=1)
ffmpeg -i rtmp://server/live/originalStream -c:a copy -c:v libx264 -vpre slow -f flv “rtmp://server/live/h264Stream live=1〃
------------------------------------------------------------------------
1.采集usb攝像頭視頻命令:
具體說明如下:我們采集10秒,采集設(shè)備為vfwcap類型設(shè)備,第0個(gè)vfwcap采集設(shè)備(如果系統(tǒng)有多個(gè)vfw的視頻采集設(shè)備,可以通過-i num來選擇),每秒8幀,輸出方式為文件,格式為mp4。
2.最簡單的抓屏:
ffmpeg -f gdigrab -i desktop out.mpg
3.從屏幕的(10,20)點(diǎn)處開始,抓取640x480的屏幕,設(shè)定幀率為5 :
ffmpeg -f gdigrab -framerate 5 -offset_x 10 -offset_y 20 -video_size 640x480 -i desktop out.mpg
4.ffmpeg從視頻中生成gif圖片:
標(biāo)題名稱:CentOS7.5下FFmpeg安裝、簡單使用總結(jié)
文章來源:http://m.fisionsoft.com.cn/article/dphegie.html


咨詢
建站咨詢
