FFmpeg 常用命令

FFmpeg 常用到的命令

1. windows 配置 ffmpeg

  • 下載地址:

  • 將下載的壓縮包解壓放在: D:\SoftWare\ffmpeg

  • 將 "D:\SoftWare\ffmpeg\bin" 添加到Windows環(huán)境變量

  • 通過在CMD中運行 ffmpeg --version 命令來查看是否安裝成功

2. 顯式視頻的細節(jié)

    ffmpeg -i vedio.mp4
    // 通過 -hide_banner 隱藏 ffmpeg 標語及細節(jié), 只顯示媒體文件的信息
    ffmpeg -hide_banner -i vedio-down.mp4

3. 視頻文件格式的轉換

    // 在常用的視頻格式之間轉換如: .avi .mp4 .rmvb .3gp .mpeg .wmv .flv
    ffmpeg -i vedio-down.mp4 vedio-down.avi
    ffmpeg -i vedio-down.avi vedio-down.flv
    //
    // 通過 -qscale 0 參數(shù)設置維持源視頻文件的質量
    ffmpeg -i vedio-down.flv -qscale 0 vedio-down01.mp4
    //
    // 檢查 ffmpeg 支持的格式
    ffmpeg -formats

4. 提取視頻中的音頻(去掉視頻)

    // 參數(shù)說明:
    //     -vn : 不處理視頻
    //     -an : 不處理音頻
    //     -ar : 設定采樣率 常用的值是22050 Hz、44100 Hz后裸、48000 Hz
    //     -ac : 設定聲音的通道數(shù)目
    //     -acodec : 設定聲音編解碼器响委,未設定時則使用與輸入流相同的編解碼器
    //     -vcodec : 設定視頻編解碼器,未設定時則使用與輸入流相同的編解碼器 
    //     -ab : 表明音頻比特率
    //     -f : 輸出文件格式 如: mp3
    ffmpeg -i out-countdown.mp4 -vn -ar 44100 -ac 2 -ab 320 -f mp3 start.mp3
    // 或者
    ffmpeg -i out-countdown.mp4 -vn -acodec copy start.mp3
    

5. 提取視頻中的視頻(去掉音頻)

    // 參數(shù)說明同上
    ffmpeg -i out-countdown.mp4 -an -vcodec copy start.mp4

6. 更改視頻的分辨率

    // 將vedio-down.mp4的分辨率設置為1920:1080的分辨率
    ffmpeg -i vedio-down.mp4 -filter:v scale=1920:1080 -c:a copy output-down.mp4
    // 將vedio-down.mp4的分辨率設置為640:480的分辨率
    ffmpeg -i vedio-down.mp4 -filter:v scale=640:480 -c:a copy output-down.mp4

7. 壓縮視頻文件

    // 壓縮視頻就是意味著損失視頻質量
    ffmpeg -i vedio.mp4 -vf scale=1280:-1 -c:v libx264 -preset veryslow -crf 24 vedio-out.mp4

8. 壓縮音頻文件

    // 和視頻一樣,也會有損失
    ffmpeg -i start.mp3 -ab 128 start-out.mp3

9. 設置視頻的屏幕顯式比例

    // -aspect : 設置視頻文件的屏幕顯式比例
    // 常用的比例: 16:9, 4:3, 16:10, 2.21:1, 2.35:1, 5:4, 2.39:1 等等
    ffmpeg -i start.mp4 -aspect 16:9 out-start16_9.mp4

10. 給視頻添加logo

    // 將logo.png 放在當前文件夾
    ffmpeg -i start.mp4 -i logo.png -filter_complex overlay out-image-start.mp4

11. 剪切媒體文件的某一段

    // 如: 將時長25秒的十秒倒計時視頻剪切為五秒倒計時
    // 參數(shù)說明:
    //     -ss : 視頻剪切的來時時間
    //     -t : 總的持續(xù)時間
    // vedio
    ffmpeg -i start.mp4 -ss 00:00:00 -codec copy -t 13 output.mp4
    // audio
    ffmpeg -i numb.mp3  -ss 00:00:00 -t 00:01:29 mid-numb.mp3

12. 將一個視頻文件分為多個部分

    // 將一個視頻分成兩個
    ffmpeg -i start.mp4 -t 00:00:12 -c copy part01.mp4 -ss 00:00:12 -codec copy part02.mp4

13. 將多個視頻拼接成一個視頻

    // 今天將一個15S的視頻合并成3分鐘的視頻
    // 第一步: 將源視頻包裝進TS格式的容器在進行合并
    ffmpeg -i mid01.mp4 - copy -bsf:v h264_mp4toannexb -f mpegts mid01.ts
    // 剩下的11個和上面的一樣; 也可以寫個腳本來完成呀
    //
    // 第二步: 編寫 filelist.txt, 其每一行內容是
    file 'mid01.ts'
    file 'mid02.ts'
    //...
    // 第三步: 執(zhí)行命令合成視頻
    ffmpeg -f concat -i filelist.txt -c copy down-output.mp4

14. 給一個視頻添加指定的音頻

    // 第一步: 通過 11 條的命令來剪切視頻到指定的長度
    //
    // 第二步: 通過 5 將源視頻的音頻去掉
    ffmpeg -i start.mp4 -c:v copy -an start-no-audio.mp4
    // 
    // 第三步: 將音頻混到上面的視頻中
    ffmpeg -i start-no-audio.mp4 -i audio.mp4 -vcodec copy -acodec copy start-OK.mp4

15. Linux下, 將攝像頭實時視頻錄制并保存為文件

    ffmpeg -f video4linux -s 320*240 -r 10 -i /home/jeff/video output.mp4

16. 音視頻變速

    // video 加速
    ffmpeg -i start.mp4 -filter:v setpts=0.5*PTS slow-start.mp4
    // audio 變速
    ffmpeg -i input.mp3 -filter:a atempo=2.0 output.mp3

17. 常用的OPTIONS 選項

17.1 獲得幫助:

參數(shù) 說明
-h 打印基本選項
-h long 打印更多選項
-h full 打印所有選項(包括所有格式和編解碼器特定的選項凡壤,很長)
-h type=name 打印命名的解碼器/編碼器/解復用器/ muxer /過濾器/ bsf的所有選項有關選項的詳細說明,請參見man ffmpeg

17.2 打印幫助/信息/功能:

參數(shù) 說明
-L 顯式執(zhí)照
-h topic 顯示幫助
-? topic 顯示幫助
-help topic 顯示幫助
--help topic 顯示幫助
-version 顯示版本
-buildconf 顯示構建配置
-formats 顯示可用格式
-muxers 顯示可用的muxers
-demuxers 顯示可用的多路分解器
-devices 顯示可用設備
-codecs 顯示可用的編解碼器
-decoders 顯示可用的解碼器
-encoders 顯示可用的編碼器
-bsfs 顯示可用的位流過濾器
-protocols 顯示可用協(xié)議
-filters 顯示可用的過濾器
-pix_fmts 顯示可用的像素格式
-layouts 顯示標準的頻道布局
-sample_fmts 顯示可用的音頻樣本格式
-colors 顯示可用的顏色名稱
-sources device 列出輸入設備的來源
-sinks device 列出輸出設備的接收器
-hwaccels 顯示可用的硬件加速方法

17.3 全局選項(影響整個程序,而不僅僅是一個文件):

參數(shù) 說明
-loglevel loglevel 設置日志記錄級別
-v loglevel 設置日志記錄級別
-report 生成報告
-max_alloc bytes 設置單個分配塊的最大大小
-y 覆蓋輸出文件
-n 從不覆蓋輸出文件
-ignore_unknown 忽略未知的流類型
-filter_threads 非復雜過濾器線程的數(shù)量
-filter_complex_threads -filter_complex的線程數(shù)
-stats 在編碼過程中打印進度報告
-max_error_rate maximum error rate 最大錯誤率的錯誤率(0.0:無錯誤亡资,1.0:100%錯誤)炮赦,高于此比率ffmpeg將返回錯誤而不是成功怜跑。
-bits_per_raw_sample number 設置每個原始樣本的位數(shù)
-vol volume 更改音頻音量(256 =正常)

17.4 每個文件的主要選項:

參數(shù) 說明
-f fmt 強制格式
-c codec 編解碼器名稱
-codec codec 編解碼器名稱
-pre preset 預設名稱
-map_metadata outfile[,metadata]:infile[,metadata] 設置infile中outfile的元數(shù)據(jù)信息infile
-t duration 記錄或轉碼音頻/視頻的“持續(xù)時間”秒
-to time_stop 記錄或轉碼停止時間
-fs limit_size 設置限制文件大小(以字節(jié)為單位)
-ss time_off 設置開始時間偏移
-sseof time_off 設置相對于EOF的開始時間偏移
-seek_timestamp 使用-ss按時間戳啟用/禁用查找
-timestamp time 設置錄制時間戳(“現(xiàn)在”設置當前時間)
-metadata string=string 添加元數(shù)據(jù)
-program title=string:st=number... 添加具有指定流的程序
-target type 指定目標文件類型(帶有可選前綴“ pal-”,“ ntsc-”或“ film-”的“ vcd”性芬,“ svcd”峡眶,“ dvd”,“ dv”或“ dv50”)
-apad 音頻墊
-frames number 設置要輸出的幀數(shù)
-filter filter_graph 設置流filtergraph
-filter_script filename 從文件中讀取流filtergraph描述
-reinit_filter 輸入參數(shù)更改時重新初始化filtergraph
-discard 丟棄
-disposition 處置

17.5 視頻選項:

參數(shù) 說明
-vframes number 設置要輸出的視頻幀數(shù)
-r rate 設置幀速率(Hz值植锉,分數(shù)或縮寫)
-s size 設置幀大斜栌!(WxH或縮寫)
-aspect aspect 寬高比設置的寬高比(4:3、16:9或1.3333俊庇、1.7777)
-bits_per_raw_sample number 設置每個原始樣本的位數(shù)
-vn 禁用視頻
-vcodec codec 強制視頻編解碼器(“復制”以復制流)
-timecode hh:mm:ss[:;.]ff 設置初始TimeCode值
-pass n 選擇通行證編號(1至3)
-vf filter_graph 設置視頻過濾器
-ab bitrate 音頻比特率(請使用-b:a)
-b bitrate 視頻比特率(請使用-b:v)
-dn 禁用數(shù)據(jù)

17.6 音頻選項:

參數(shù) 說明
-aframes number 設置要輸出的音頻幀數(shù)
-aq quality 設置音頻質量(特定于編解碼器)
-ar rate 設置音頻采樣率(以Hz為單位)
-ac channels 設置音頻頻道數(shù)
-an 禁用音頻
-acodec codec 強制音頻編解碼器(“復制”以復制流)
-vol volume 更改音頻音量(256 =正常)
-af filter_graph 設置音頻過濾器

17.7 字幕選項:

參數(shù) 說明
-s size 設置幀大惺ㄊ睢(WxH或縮寫)
-sn 禁用字幕
-scodec codec 強制字幕編解碼器(“復制”以復制流)
-stag fourcc/tag 強制字幕tag/fourcc
-fix_sub_duration 修復字幕的持續(xù)時間
-canvas_size size 設置畫布大小(WxH或縮寫)
-spre preset 將字幕選項設置為指示的預設

18. 未完, 目前這些已經夠我用了, 用到在學習

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末暇赤,一起剝皮案震驚了整個濱河市心例,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌鞋囊,老刑警劉巖止后,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異溜腐,居然都是意外死亡译株,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進店門挺益,熙熙樓的掌柜王于貴愁眉苦臉地迎上來歉糜,“玉大人,你說我怎么就攤上這事望众》瞬梗” “怎么了?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵烂翰,是天一觀的道長夯缺。 經常有香客問我,道長甘耿,這世上最難降的妖魔是什么踊兜? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮佳恬,結果婚禮上捏境,老公的妹妹穿的比我還像新娘。我一直安慰自己毁葱,他們只是感情好垫言,可當我...
    茶點故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著倾剿,像睡著了一般筷频。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天截驮,我揣著相機與錄音,去河邊找鬼际度。 笑死葵袭,一個胖子當著我的面吹牛,可吹牛的內容都是我干的乖菱。 我是一名探鬼主播坡锡,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼窒所!你這毒婦竟也來了鹉勒?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤吵取,失蹤者是張志新(化名)和其女友劉穎禽额,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體皮官,經...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡脯倒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了捺氢。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片藻丢。...
    茶點故事閱讀 38,018評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖摄乒,靈堂內的尸體忽然破棺而出悠反,到底是詐尸還是另有隱情,我是刑警寧澤馍佑,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布斋否,位于F島的核電站,受9級特大地震影響挤茄,放射性物質發(fā)生泄漏如叼。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一穷劈、第九天 我趴在偏房一處隱蔽的房頂上張望笼恰。 院中可真熱鬧,春花似錦歇终、人聲如沸社证。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽追葡。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宜肉,已是汗流浹背匀钧。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留谬返,地道東北人之斯。 一個月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像遣铝,于是被迫代替她去往敵國和親佑刷。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,762評論 2 345

推薦閱讀更多精彩內容

  • 第一篇文章:作者:37號同學來源:CSDN原文:https://blog.csdn.net/chenzongduo...
    路漫漫其修遠兮Wzt閱讀 5,877評論 0 0
  • 分離視頻音頻流ffmpeg -i input_file -vcodec copy -an output_file_...
    nenhall閱讀 6,334評論 2 6
  • 寫在前面: 今天往移動硬盤上拷電影的時候忽然遇見文件過大無法拷貝的問題酿炸。因為一個移動硬盤如果分區(qū)為NTFS格式瘫絮,那...
    vincentgemini閱讀 14,206評論 0 9
  • FFMPEG是特別強大的專門用于處理音視頻的開源庫。你既可以使用它的API對音視頻進行處理填硕,也可以使用它提供的工具...
    小村醫(yī)閱讀 3,934評論 0 3
  • 1.分離視頻音頻流 ffmpeg -i input_file -vcodec copy -an output_fi...
    XLAccount閱讀 3,062評論 0 8