ffmpeg常用命令

FFmpeg處理音視頻流程
截屏2022-09-23 上午8.42.12.png
ffmpeg的安裝
在macbook下的安裝
  1. 使用Homebrew安裝庶灿,打開(kāi)終端(Terminal)應(yīng)用程序。
  2. 如果您尚未安裝Homebrew违柏,請(qǐng)?jiān)诮K端中輸入以下命令并按Enter鍵來(lái)安裝Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  1. 安裝FFmpeg为肮。在終端中輸入以下命令并按Enter鍵:
brew install ffmpeg
  1. 等待安裝完成口注。Homebrew將下載并安裝FFmpeg及其相關(guān)依賴(lài)項(xiàng)。
  2. 安裝完成后分俯,您可以通過(guò)輸入以下命令來(lái)驗(yàn)證安裝:
ffmpeg -version
在Windows上安裝FFmpeg
  1. 使用Windows包管理器Chocolatey安裝肾筐,打開(kāi)命令提示符或PowerShell(以管理員身份運(yùn)行)。
  2. 如果尚未安裝Chocolatey缸剪,請(qǐng)?jiān)诿钐崾痉騊owerShell中輸入以下命令并按Enter鍵安裝Chocolatey:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
  1. 安裝FFmpeg吗铐。在命令提示符或PowerShell中輸入以下命令并按Enter鍵:
choco install ffmpeg
  1. 等待安裝完成。Chocolatey將下載并安裝FFmpeg杏节。
  2. 安裝完成后唬渗,您可以在命令提示符或PowerShell中輸入以下命令來(lái)驗(yàn)證安裝:
ffmpeg -version
FFmpeg基本信息查詢(xún)命令

-versio 顯示版本
-formats 顯示可用的格式
-demuxers 顯示可用的demuxers
-protocols 顯示可用的協(xié)議
-muxers 顯示可用的muxers
-filters 顯示可用的過(guò)濾器
-devices 顯示可用的設(shè)備
-pix_fmts 顯示可用的像素格式
-codecs 顯示所有編解碼器
-sample_fmts 顯示可用的采樣格式
-decoders 顯示可用的解碼器
-layouts 顯示channel名稱(chēng)
-encoders 顯示所有的編碼器
-colors 顯示識(shí)別的顏色名稱(chēng)
-bsfs 顯示比特流filter

FFmpeg錄制命令

ffmpeg -f avfoundation -i 1 -r 30 out.yuv
-f :指定使用avfoundation采集數(shù)據(jù)
-i :指定從哪兒采集數(shù)據(jù),它是- -個(gè)文件索引號(hào)
-r :指定幀率

-f 指定使用 avfoundation 采集數(shù)據(jù)。
-i 指定從哪兒采集數(shù)據(jù)奋渔,它是一個(gè)文件索引號(hào)镊逝。在我的MAC上,1和2(外界顯示器)都代表桌面(可以通過(guò)上面的命令查詢(xún)?cè)O(shè)備索引號(hào))嫉鲸。
-r 指定幀率撑蒜。按ffmpeg官方文檔說(shuō)-r與-framerate作用相同,但實(shí)際測(cè)試時(shí)發(fā)現(xiàn)不同充坑。-framerate 用于限制輸入减江,而-r用于限制輸出。

播放

ffplay -s 2560x1600 -pix_fmt uyvy422 out.yuv

錄制的格式為yuv422捻爷,分辨率 2560x1600,所以要告訴ffplay 播放格式為uyuv422辈灼,通過(guò) -pix_fmt參數(shù)

支持設(shè)備的索引號(hào)

macOS系統(tǒng)

ffmpeg -f avfoundation -list_devices true -i ""

windows系統(tǒng)

ffmpeg -list_devices true -f dshow -i dummy

ffmpeg -f avfoundation -i "<video device index>:<audio device index>" av-out.mov
??視頻錄制案例
# macOS系統(tǒng)中執(zhí)行
ffmpeg -f avfoundation  -i "2:0" -c:v libx264 -r 20 -preset ultrafast -crf 0 -pix_fmt yuv420p output.mp4
# Windows系統(tǒng)中執(zhí)行
ffmpeg -f dshow -i video="Integrated Camera":audio="Microphone Array (Realtek High Definition Audio)" -c:v libx264 -r 20 -preset ultrafast -crf 0 -pix_fmt yuv420p output.mp4

-f :指定使用avfoundation采集數(shù)據(jù)
-c:v libx264rgb: 指定使用libx264rgb編碼器。
-qp 0: 設(shè)置視頻質(zhì)量參數(shù)也榄,0代表質(zhì)量高巡莹,越大代表質(zhì)量越低
-crf 10:10 來(lái)設(shè)定比較高的畫(huà)質(zhì),默認(rèn)是23甜紫;和 -qp 0 同理效果降宅,crf更常用;同時(shí)使用-qp和-crf時(shí)囚霸,-qp通常會(huì)覆蓋-crf的效果
-i: 表示錄制的屏幕序號(hào)或者 屏幕序號(hào):音頻設(shè)備序號(hào)
-r 23: 表示音頻碼率腰根,如出現(xiàn)畫(huà)面和音頻不一致,可通過(guò)此參數(shù)調(diào)整
-preset ultrafast: 速度優(yōu)先ultrafast>superfast>veryfast>faster>fast>medium>slow>slower>veryslow
速度遞減拓型,畫(huà)質(zhì)遞增
-pix_fmt yuv420p : 表示指定輸出視頻的像素格式

抓取鼠標(biāo)
ffmpeg -f x11grab -capture_cursor 1 -i :0.0 output.mp4

-f x11grab: 表示使用X11抓取屏幕
-capture_cursor 1: 用于指定是否捕獲屏幕錄制時(shí)的鼠標(biāo)光標(biāo);1表示啟用捕獲鼠標(biāo)光標(biāo)额嘿,0則表示禁用

FFmpeg錄音命令

ffmpeg -f avfoundation -i :0 out.wav
:0 代表音頻設(shè)備

開(kāi)始錄制音頻

ffmpeg -f avfoundation -i :1 out.wav

播放

ffplay out.wav

yuv 是原始視頻數(shù)據(jù)瘸恼,ffplay 播放該類(lèi)型視頻時(shí),需要指定分表率册养,分辨率從錄制日志里可以看到

FFmpeg分解與復(fù)用

多媒體格式轉(zhuǎn)換

ffmpeg -i out.mp4 -vcodec copy -acodec copy out.flv
-i :輸入文件
-vcodec copy :視頻編碼處理方式
-acodec copy :音頻編碼處理方式

抽取視頻

ffmpeg -i f35.mov -an -vcodec copy out.h264

抽取音頻

ffmpeg -i f35.mov -acodec copy -vn out.aac

FFmpeg處理原始數(shù)據(jù)命令

FFmpeg提取YUV數(shù)據(jù)

ffmpeg -i input.mp4 -an -c:v rawvideo -pix_fmts yuv420p out.yuv

帶分辨率播放

ffplay -s 638x358 out.yuv

FFmpeg提取PCM數(shù)據(jù)

ffmpeg -i out.mp4 -vn -ar 44100 -ac2 -f s16le out.pcm

FFmpeg濾鏡命令

ffmpeg -i in.mov -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4
crop 格式 : crop=out_w:out_h:x:y

FFmpeg裁剪與合并命令

裁剪

ffmpeg -i in.mp4 -ss 00:00:00 -t 10 out.ts

合并

ffmpeq -f concat -i inputs.txt out.flv
inputs.txt 內(nèi)容為 'file filename'格式东帅。

FFmpeg圖片/視頻互轉(zhuǎn)命令

視頻轉(zhuǎn)圖片

ffmpeg -i in.flv -r 1 -f image2 image-%3d.jpeg

圖片轉(zhuǎn)視頻

ffmpeg -i image-%3d jpeg out.mp4

FFmpeg直播推/拉流

直播推流

ffmpeg -re -i out.mp4 -c copy -f flv rtmp://server/live/streamName

直播拉流

ffmpeg -i rtmp://server/live/streamName -c copy dump.flv

實(shí)戰(zhàn)

推流地址

rtmp://47.98.37.74:1935/live/4K.m3u

拉流地址

http://www.xypsp.com/live/4K.m3u8
http://47.98.37.74/live/4K.m3u8

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市球拦,隨后出現(xiàn)的幾起案子靠闭,更是在濱河造成了極大的恐慌,老刑警劉巖坎炼,帶你破解...
    沈念sama閱讀 216,402評(píng)論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件愧膀,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡谣光,警方通過(guò)查閱死者的電腦和手機(jī)扇调,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)抢肛,“玉大人狼钮,你說(shuō)我怎么就攤上這事〖裥酰” “怎么了熬芜?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,483評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)福稳。 經(jīng)常有香客問(wèn)我涎拉,道長(zhǎng),這世上最難降的妖魔是什么的圆? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,165評(píng)論 1 292
  • 正文 為了忘掉前任鼓拧,我火速辦了婚禮了讨,結(jié)果婚禮上畦戒,老公的妹妹穿的比我還像新娘。我一直安慰自己雀瓢,他們只是感情好梅掠,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,176評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布酌住。 她就那樣靜靜地躺著,像睡著了一般阎抒。 火紅的嫁衣襯著肌膚如雪酪我。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,146評(píng)論 1 297
  • 那天且叁,我揣著相機(jī)與錄音都哭,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛欺矫,可吹牛的內(nèi)容都是我干的稠歉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,032評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼汇陆,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了带饱?” 一聲冷哼從身側(cè)響起毡代,我...
    開(kāi)封第一講書(shū)人閱讀 38,896評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎勺疼,沒(méi)想到半個(gè)月后教寂,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,311評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡执庐,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,536評(píng)論 2 332
  • 正文 我和宋清朗相戀三年酪耕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片轨淌。...
    茶點(diǎn)故事閱讀 39,696評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡迂烁,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出递鹉,到底是詐尸還是另有隱情盟步,我是刑警寧澤,帶...
    沈念sama閱讀 35,413評(píng)論 5 343
  • 正文 年R本政府宣布躏结,位于F島的核電站却盘,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏媳拴。R本人自食惡果不足惜黄橘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,008評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望屈溉。 院中可真熱鬧塞关,春花似錦、人聲如沸子巾。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)砰左。三九已至匿醒,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間缠导,已是汗流浹背廉羔。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,815評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留僻造,地道東北人憋他。 一個(gè)月前我還...
    沈念sama閱讀 47,698評(píng)論 2 368
  • 正文 我出身青樓孩饼,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親竹挡。 傳聞我的和親對(duì)象是個(gè)殘疾皇子镀娶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,592評(píng)論 2 353

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

  • 參考資料:https://ffmpeg.org/ffmpeg-all.html#Synopsis 一、基本信息查詢(xún)...
    yanerly閱讀 3,030評(píng)論 0 0
  • FFmpeg 是一套可以用來(lái)記錄揪罕、轉(zhuǎn)換數(shù)字音頻梯码、視頻,并能將其轉(zhuǎn)化為流的開(kāi)源計(jì)算機(jī)程序好啰。本文將簡(jiǎn)單介紹FFmpeg...
    MzDavid閱讀 1,950評(píng)論 0 0
  • FFMPEG是特別強(qiáng)大的專(zhuān)門(mén)用于處理音視頻的開(kāi)源庫(kù)轩娶。你既可以使用它的API對(duì)音視頻進(jìn)行處理,也可以使用它提供的工具...
    小村醫(yī)閱讀 3,937評(píng)論 0 3
  • FFmpeg常用命令分類(lèi): 基本信息查詢(xún) 錄制 分解/復(fù)用 裁剪與合并 圖片/視頻互轉(zhuǎn) 直播 處理原始數(shù)據(jù) 濾鏡 ...
    沈楓_ShenF閱讀 1,130評(píng)論 0 5
  • ffmpeg查詢(xún)命令 常用命令 視頻裁剪濾鏡(播放器大小裁剪): ffmpeg -i killer.mp4 -vf...
    無(wú)神閱讀 680評(píng)論 0 1