ffmpeg相關(guān)常用命令及可選參數(shù)

ffmpeg相關(guān)常用命令及可選參數(shù), 包括ffmpeg.exe、 ffplay.exe显沈、 ffprobe.exe, 程序下載鏈接戳這里, 選擇static即可

ffmpeg

ffmpeg 常用命令

//列出所有設(shè)備
ffmpeg -list_devices true -f dshow -i dummy

//提取h264裸流
ffmpeg -i video.mp4 -codec copy -f h264 video.h264
ffmpeg -i video.mp4 -an -vcodec copy video.h264

//提取aac裸流
ffmpeg -i video.mp4 -vn -acodec copy audio.aac

//桌面采集錄制
ffmpeg -f gdigrab -video_size 1920x1080 -t 10 -r 30 -i desktop -vcodec libx264 x264.mp4
ffmpeg -f gdigrab -video_size 1920x1080 -t 40 -r 30 -i desktop -vcodec h264_qsv x264.mp4
ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="virtual-audio-capturer" -t 40 -r 30 -vcodec libx264 output.mp4

//桌面采集推流
ffmpeg -f gdigrab -i desktop -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -f flv rtmp://server/live/streamName

//rtsp流轉(zhuǎn)發(fā)推流
ffmpeg -i rtsp://admin:password1@192.168.31.44/h264/ch1/sub/av_stream -vcodec copy -acodec copy -f flv -y rtmp://192.168.31.254/live/output

//桌面+聲卡采集推流 (virtual-audio-capturer需要安裝相關(guān)程序,https://sourceforge.net/projects/screencapturer/files/)
ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="virtual-audio-capturer" -pix_fmt yuv420p -vcodec libx264 -acodec aac -s 1280x720 -r 25 -q 10 -ar 44100 -ac 2 -tune zerolatency -preset ultrafast -f flv rtmp://server/live/streamName

//文件源推流
ffmpeg -re -i video.mp4 -c copy -f flv rtmp://server/live/streamName

//直播流錄制
ffmpeg -i rtmp://server/live/streamName -c copy dump.flv

//mkv轉(zhuǎn)mp4
ffmpeg -i video.mkv -codec copy video.mp4

//視頻切割
ffmpeg -ss 00:01:00 -t 00:01:03 -y -i video.mp4 -vcodec copy -acodec copy cutting.mp4 

//視頻縮放, iw是輸入的寬度, iw/2就是一半;-1 為保持寬高比
ffmpeg -i video.mp4 -vf scale=iw/2:-1 output.mp4

//視頻截取, 從[80,60]的位置開(kāi)始, 截取200x100的視頻
ffmpeg -i video.mp4 -filter:v "crop=80:60:200:100" -c:a copy output-200x100.mp4

//視頻截取, 右下角1/4
ffmpeg -i video.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy output-1-4.mp4

//指定時(shí)間截圖
ffmpeg -ss 00:00:30 -i video.mp4 -y -f image2 -vframes 1 image.png

//每隔20S截圖
ffmpeg -i video.mp4 -f image2 -vf fps=fps=1/20 out%d.png

//將視頻轉(zhuǎn)為gif
ffmpeg -i video.mp4 -ss 0:0:30 -t 10 -s 320x240 -pix_fmt rgb24 output.gif

//圖片轉(zhuǎn)換為視頻逢唤,視頻幀率為fps=25拉讯,每張圖片顯示幀率0.5(即每張圖顯示2秒)
ffmpeg -y -r 0.5 -i pic/%d.jpg -vcodec libx264 -vf fps=25 output.mp4

//添加圖片水印,colorkey將圖片中指定顏色變?yōu)橥该?ffmpeg -i video.mp4 -i test.png -filter_complex "[1:v]colorkey=0xFFFFFF:0.6:1.0[ckout];[0:v][ckout]overlay=x=W-w-10:y=0[out]" -map "[out]" -movflags faststart drawimage.mp4

//添加文字水印,simsun.ttc是宋體鳖藕,字體可更換
ffmpeg.exe  -i video.mp4 -vf "drawtext=fontfile=simsun.ttc: text='文字水印':x=100:y=100:fontsize=28:fontcolor=red:shadowy=2" drawtext.mp4

//內(nèi)嵌字幕(嵌入視頻中)
ffmpeg -i video.mp4 -vf ass=subtitles.ass output.mp4

//內(nèi)掛字幕(視頻字幕還是分離的魔慷,會(huì)導(dǎo)致進(jìn)度條不能拖動(dòng))
ffmpeg -i video.mp4 -i subtitles.ass -c:s mov_text -c:v copy -c:a copy output.mp4

//加密視頻
ffmpeg -i video.mp4 -vcodec copy -acodec copy -encryption_scheme cenc-aes-ctr -encryption_key 76a6c65c5ea76 2046bd749a2e632ccbb -encryption_kid a7e61c373e219033c21091fa607bf3b8 video_encrypted.mp4
//播放加密視頻
ffplay video_encrypted.mp4 -decryption_key 76a6c65c5ea762046bd749a2e632ccbb

//視頻拼接
ffmpeg -f concat -i filelist.txt -c copy output.mp4

//生成單色測(cè)試視頻
ffmpeg -ss 0 -t 15  -f lavfi -i color=c=0x000000:s=1280x720:r=30 -vcodec libx264 -r:v 30 output.mp4

ffmpeg可選參數(shù)

通用選項(xiàng)

參數(shù) 說(shuō)明
-L license
-h 幫助
-fromats 顯示可用的格式,編解碼的著恩,協(xié)議的...
-f 強(qiáng)迫采用格式fmt
-i filename 輸入文件
-y 覆蓋輸出文件
-t duration 設(shè)置紀(jì)錄時(shí)間 hh:mm:ss[.xxx]格式的記錄時(shí)間也支持
-ss position 搜索到指定的時(shí)間 [-]hh:mm:ss[.xxx]的格式也支持
-title string 設(shè)置標(biāo)題
-author string 設(shè)置作者
-copyright string 設(shè)置版權(quán)
-comment string 設(shè)置評(píng)論
-target type 設(shè)置目標(biāo)文件類型(vcd,svcd,dvd) 所有的格式選項(xiàng)(比特率院尔,編解碼以及緩沖區(qū)大小)自動(dòng)設(shè)置
-hq 激活高質(zhì)量設(shè)置
-itsoffset offset 置以秒為基準(zhǔn)的時(shí)間偏移喉誊,該選項(xiàng)影響所有后面的輸入文件邀摆,定義一個(gè)正偏移意味著相應(yīng)的流被延遲了 offset秒

視頻選項(xiàng)

參數(shù) 說(shuō)明
-b bitrate 設(shè)置比特率,缺省200kb/s
-r fps 設(shè)置幀頻 缺省25
-s size 設(shè)置幀大小 格式為WXH 缺省160X128
-aspect aspect 設(shè)置橫縱比 4:3 16:9 或 1.3333 1.7777
-croptop size 設(shè)置頂部切除帶大小 像素單位
-cropbottom size 同上伍茄,方向不同
–cropleft size 同上栋盹,方向不同
–cropright size 同上,方向不同
-padtop size 設(shè)置頂部補(bǔ)齊的大小 像素單位
-padbottom size 同上敷矫,方向不同
–padleft size 同上例获,方向不同
–padright size 同上,方向不同
–padcolor color 設(shè)置補(bǔ)齊條顏色(hex,6個(gè)16進(jìn)制的數(shù)曹仗,紅:綠:蘭排列榨汤,比如 000000代表黑色)
-vn 不做視頻記錄
-bt tolerance 設(shè)置視頻碼率容忍度kbit/s
-maxrate bitrate 設(shè)置最大視頻碼率容忍度
-minrate bitreate 設(shè)置最小視頻碼率容忍度
-bufsize size 設(shè)置碼率控制緩沖區(qū)大小
-bufsize size 設(shè)置碼率控制緩沖區(qū)大小
-vcodec codec 強(qiáng)制使用codec編解碼方式。如果用copy表示原始編解碼數(shù)據(jù)必須被拷貝
-sameq 使用同樣視頻質(zhì)量作為源(VBR)
-pass n 選擇處理遍數(shù)(1或者2)整葡。兩遍編碼非常有用件余。第一遍生成統(tǒng)計(jì)信息,第二遍生成精確的請(qǐng)求的碼率
-passlogfile file 選擇兩遍的紀(jì)錄文件名為file

高級(jí)視頻選項(xiàng)

參數(shù) 說(shuō)明
-g gop_size 設(shè)置圖像組大小
-intra 僅適用幀內(nèi)編碼
-qscale q 使用固定的視頻量化標(biāo)度(VBR)
-qmin q 最小視頻量化標(biāo)度(VBR)
-qmax q 最大視頻量化標(biāo)度(VBR)
-qdiff q 量化標(biāo)度間最大偏差 (VBR)
-qblur blur 視頻量化標(biāo)度柔化(VBR)
-qcomp compression 視頻量化標(biāo)度壓縮(VBR)
-rc_init_cplx complexity 一遍編碼的初始復(fù)雜度
-b_qfactor factor 在p和b幀間的qp因子
-i_qfactor factor 在p和i幀間的qp因子
-b_qoffset offset 在p和b幀間的qp偏差
-i_qoffset offset 在p和i幀間的qp偏差
-rc_eq equation 設(shè)置碼率控制方程 默認(rèn)tex^qComp
-rc_override override 特定間隔下的速率控制重載
-me method 設(shè)置運(yùn)動(dòng)估計(jì)的方法 可用方法有 zero phods log x1 epzs(缺省) full
-dct_algo algo 設(shè)置dct的算法 可用的有 0 FF_DCT_AUTO 缺省的DCT 1 FF_DCT_FASTINT 2 FF_DCT_INT 3 FF_DCT_MMX 4 FF_DCT_MLIB 5 FF_DCT_ALTIVEC
-idct_algo algo 設(shè)置idct算法√淦鳎可用的有 0 FF_IDCT_AUTO 缺省的IDCT 1 FF_IDCT_INT 2 FF_IDCT_SIMPLE 3 FF_IDCT_SIMPLEMMX 4 FF_IDCT_LIBMPEG2MMX 5 FF_IDCT_PS2 6 FF_IDCT_MLIB 7 FF_IDCT_ARM 8 FF_IDCT_ALTIVEC 9 FF_IDCT_SH4 10 FF_IDCT_SIMPLEARM
-er n 設(shè)置錯(cuò)誤殘留為n 1 FF_ER_CAREFULL 缺省 2 FF_ER_COMPLIANT 3 FF_ER_AGGRESSIVE 4 FF_ER_VERY_AGGRESSIVE
-ec bit_mask 設(shè)置錯(cuò)誤掩蔽為bit_mask,該值為如下值的位掩碼 1 FF_EC_GUESS_MVS (default=enabled) 2 FF_EC_DEBLOCK (default=enabled)
-bf frames 使用frames B 幀旬渠,支持mpeg1,mpeg2,mpeg4
-mbd mode 宏塊決策 0 FF_MB_DECISION_SIMPLE 使用mb_cmp 1 FF_MB_DECISION_BITS 2 FF_MB_DECISION_RD
-4mv 使用4個(gè)運(yùn)動(dòng)矢量 僅用于mpeg4
-part 使用數(shù)據(jù)劃分 僅用于mpeg4
-bug param 繞過(guò)沒(méi)有被自動(dòng)監(jiān)測(cè)到編碼器的問(wèn)題
-strict strictness 跟標(biāo)準(zhǔn)的嚴(yán)格性
-aic 使能高級(jí)幀內(nèi)編碼 h263+
-umv 使能無(wú)限運(yùn)動(dòng)矢量 h263+
-deinterlace 不采用交織方法
-interlace 強(qiáng)迫交織法編碼僅對(duì)mpeg2和mpeg4有效。當(dāng)你的輸入是交織的并且你想要保持交織以最小圖像損失的時(shí)候采用該選項(xiàng)端壳「娑可選的方法是不交織,但是損失更大
-psnr 計(jì)算壓縮幀的psnr
-vstats 輸出視頻編碼統(tǒng)計(jì)到vstats_hhmmss.log
-vhook module 插入視頻處理模塊 module 包括了模塊名和參數(shù)损谦,用空格分開(kāi)

音頻選項(xiàng)

參數(shù) 說(shuō)明
-ab bitrate 設(shè)置音頻碼率
-ar freq 設(shè)置音頻采樣率
-ac channels 設(shè)置通道 缺省為1
-an 不使能音頻紀(jì)錄
-acodec codec 使用codec編解碼

音頻/視頻捕獲選項(xiàng)

參數(shù) 說(shuō)明
-vd device 設(shè)置視頻捕獲設(shè)備岖免。比如/dev/video0
-vc channel 設(shè)置視頻捕獲通道 DV1394專用
-tvstd standard 置電視標(biāo)準(zhǔn) NTSC PAL(SECAM)
-dv1394 設(shè)置DV1394捕獲
-av device 設(shè)置音頻設(shè)備 比如/dev/dsp

高級(jí)選項(xiàng)

參數(shù) 說(shuō)明
-map file:stream 設(shè)置輸入流映射
-debug 打印特定調(diào)試信息
-benchmark 為基準(zhǔn)測(cè)試加入時(shí)間
-hex 傾倒每一個(gè)輸入包
-bitexact 僅使用位精確算法 用于編解碼測(cè)試
-ps size 設(shè)置包大小,以bits為單位
-re 以本地幀頻讀數(shù)據(jù)照捡,主要用于模擬捕獲設(shè)備
-loop 循環(huán)輸入流(只工作于圖像流颅湘,用于ffserver測(cè)試)

ffplay

ffplay常用命令

//從30s開(kāi)始播放10s,播放完退出
ffplay -ss 00:00:30 -t 10 -autoexit video.mp4

//指定播放窗口大小為320x180
ffplay -x 320 -y 180 video.mp4

//音頻波形可視化
ffplay -showmode 1 audio.aac

ffplay可選參數(shù)

參數(shù) 說(shuō)明
-x width 強(qiáng)制以 "width" 寬度顯示
-y height 強(qiáng)制以 "height" 高度顯示
-an 禁止音頻
-vn 禁止視頻
-ss pos 跳轉(zhuǎn)到指定的位置(秒)
-t duration 播放 "duration" 秒音/視頻
-bytes 按字節(jié)跳轉(zhuǎn)
-nodisp 禁止圖像顯示(只輸出音頻)
-f fmt 強(qiáng)制使用 "fmt" 格式
-window_title title 設(shè)置窗口標(biāo)題(默認(rèn)為輸入文件名)
-loop number 循環(huán)播放 "number" 次(0將一直循環(huán))
-showmode mode 設(shè)置顯示模式,可選mode: 0, 顯示視頻; 1, 顯示音頻波形; 2, 顯示音頻頻帶栗精。默認(rèn)為0, 播放時(shí)按w鍵可切換mode
-i input_file 指定輸入文件
-sync type 設(shè)置主時(shí)鐘為音頻闯参、視頻、或者外部悲立。默認(rèn)為音頻鹿寨。主時(shí)鐘用來(lái)進(jìn)行音視頻同步
-threads count 設(shè)置線程個(gè)數(shù)
-autoexit 播放完成后自動(dòng)退出
-exitonkeydown 任意鍵按下時(shí)退出
-exitonmousedown 任意鼠標(biāo)按鍵按下時(shí)退出
-acodec codec_name 強(qiáng)制指定音頻解碼器為 "codec_name"
-vcodec codec_name 強(qiáng)制指定視頻解碼器為 "codec_name"
-scodec codec_name 強(qiáng)制指定字幕解碼器為 "codec_name"

ffplay快捷鍵

參數(shù) 說(shuō)明
q 退出
f 全屏
p 暫停
w 切換顯示模式(視頻/音頻波形/音頻頻帶)
s 步進(jìn)到下一幀
left/right 快退/快進(jìn) 10 秒
down/up 快退/快進(jìn) 1 分鐘
page down/page up 跳轉(zhuǎn)到前一章/下一章(如果沒(méi)有章節(jié),快退/快進(jìn) 10 分鐘)
mouse click 跳轉(zhuǎn)到鼠標(biāo)點(diǎn)擊的位置(根據(jù)鼠標(biāo)在顯示窗口點(diǎn)擊的位置計(jì)算百分比)

ffprobe

ffprobe常用命令

//打印視頻format信息薪夕,代碼里就是av_dump_format()函數(shù)
ffprobe -show_format video.mp4

//以json格式輸出"streams"音視頻編碼信息脚草,還有“format”音視頻封包信息
ffprobe -v quiet -show_format -show_streams -print_format json video.mp4

ffprobe可選參數(shù)

參數(shù) 說(shuō)明
-show_packets [PACKET]標(biāo)簽的多媒體信息
-show_data packets多媒體數(shù)據(jù)
-show_format 多媒體封裝格式
-show_frames 視頻幀信息
-print_format 信息輸出格式,支持xml原献、csv馏慨、json、flat嚼贡、ini
-select_streams 參數(shù)可以是a熏纯、v、s分別表示只查看音頻粤策、視頻、字幕

參考鏈接

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末误窖,一起剝皮案震驚了整個(gè)濱河市叮盘,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌霹俺,老刑警劉巖柔吼,帶你破解...
    沈念sama閱讀 219,188評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異丙唧,居然都是意外死亡愈魏,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)培漏,“玉大人溪厘,你說(shuō)我怎么就攤上這事∨票” “怎么了畸悬?”我有些...
    開(kāi)封第一講書人閱讀 165,562評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)珊佣。 經(jīng)常有香客問(wèn)我蹋宦,道長(zhǎng),這世上最難降的妖魔是什么咒锻? 我笑而不...
    開(kāi)封第一講書人閱讀 58,893評(píng)論 1 295
  • 正文 為了忘掉前任冷冗,我火速辦了婚禮,結(jié)果婚禮上惑艇,老公的妹妹穿的比我還像新娘贾惦。我一直安慰自己,他們只是感情好敦捧,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布须板。 她就那樣靜靜地躺著,像睡著了一般兢卵。 火紅的嫁衣襯著肌膚如雪习瑰。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 51,708評(píng)論 1 305
  • 那天秽荤,我揣著相機(jī)與錄音甜奄,去河邊找鬼。 笑死窃款,一個(gè)胖子當(dāng)著我的面吹牛课兄,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播晨继,決...
    沈念sama閱讀 40,430評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼烟阐,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了紊扬?” 一聲冷哼從身側(cè)響起蜒茄,我...
    開(kāi)封第一講書人閱讀 39,342評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎餐屎,沒(méi)想到半個(gè)月后檀葛,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,801評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡腹缩,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評(píng)論 3 337
  • 正文 我和宋清朗相戀三年屿聋,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了空扎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,115評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡润讥,死狀恐怖转锈,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情象对,我是刑警寧澤黑忱,帶...
    沈念sama閱讀 35,804評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站勒魔,受9級(jí)特大地震影響甫煞,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜冠绢,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評(píng)論 3 331
  • 文/蒙蒙 一抚吠、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧弟胀,春花似錦楷力、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,008評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至夏哭,卻和暖如春检柬,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背竖配。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,135評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工何址, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人进胯。 一個(gè)月前我還...
    沈念sama閱讀 48,365評(píng)論 3 373
  • 正文 我出身青樓用爪,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親胁镐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子偎血,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 因?yàn)檎趯W(xué)習(xí)音視頻宠能,從當(dāng)當(dāng)買了關(guān)于FFmpeg的書,在家補(bǔ)充知識(shí)磁餐。遇到了一些命令行的使用违崇,我把它從書上移到筆記上阿弃,...
    請(qǐng)叫我果爸閱讀 14,655評(píng)論 0 18
  • 寫在前面 如果您對(duì)音視頻技術(shù)感興趣,可以訂閱我的專題:音視頻專輯也可以關(guān)注我的簡(jiǎn)書賬戶: 張芳濤羞延,我后期會(huì)發(fā)布更多...
    張芳濤閱讀 11,566評(píng)論 11 38
  • 在線文檔完整讀一遍吧:http://www.ffmpeg.org/ffmpeg.html 一渣淳、視頻處理 1.格式轉(zhuǎn)...
    不合格碼農(nóng)閱讀 480評(píng)論 0 0
  • 不知道從什么時(shí)候開(kāi)始 我在生活中漸漸的迷失了方向 你可以,想象出一個(gè)小男孩入愧,在繁華的大街上與家人走丟是什么感受嗎?...
    有種努力叫靠自己閱讀 1,651評(píng)論 0 0
  • 從小到大我經(jīng)歷的事情像天上的星星一樣嗤谚,數(shù)也數(shù)不清棺蛛。令我最開(kāi)心的是那件事情终畅。 記得一個(gè)星期天,我和妹妹鲸湃、小紅。一起玩...
    順心_5f14閱讀 341評(píng)論 0 0