0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

音視頻圖像處理神器FFmpeg有用的命令示例

jf_ZqFkd6Up ? 來源:linux迷 ? 2023-05-04 14:59 ? 次閱讀

ffmpeg由Fabrice Bellard創(chuàng)建,他與QEMU和QuickJS ( JSLinux背后的引擎)的創(chuàng)建者相同。

本文介紹了許多不同的 ffmpeg 用例,假設(shè)讀者具有該軟件的基本知識。您將在本文中看到各種實際示例。更多詳細(xì)信息,請參考官方文檔頁面。

盡管它們以多行形式呈現(xiàn),但以下所有示例都是一行。只需將它們復(fù)制并粘貼到您的終端中,然后按 Enter。

1. 編解碼器選項

ffmpeg 支持的可用編解碼器非常多。以下示例是一些最流行的組合,已在許多不同的商業(yè)項目中使用。

1.1 轉(zhuǎn)換為 MP4



linuxmi@linuxmi /home/linuxmi/linuxmi.com                                  
 ffmpeg -i linuxmi.mov -c:v libx264 -c:a aac linuxmi.con.mp4


39a0afc8-e5e2-11ed-ab56-dac502259ad0.png

libx264是最流行的 H.264 編碼器之一。libx264+aac組合支持 IE11。使用-crf選項來控制輸出質(zhì)量。


1.2 轉(zhuǎn)換為 WebM


linuxmi@linuxmi /home/linuxmi/linuxmi.com                                  
 ffmpeg -i linuxmi.mov 
  -c:v libvpx-vp9 -crf 31 -b:v 1M 
  -c:a libvorbis 
linuxmi.webm
39af495c-e5e2-11ed-ab56-dac502259ad0.png

-crf代表恒定速率因子。libvpx沒有默認(rèn)的 CRF 值。-crf 31用于 1080p 通常被認(rèn)為足夠好了,而它可以接受 0(無損)和 63(最差質(zhì)量)之間的任何數(shù)字。供您參考,libx264的默認(rèn)值為 28,范圍從 0 到 51。

-b:v是比特率的一個選項。值1M與1000k 相同。

1.3 轉(zhuǎn)換為 Ogg


linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                              
 ffmpeg -i linuxmi.mov 
  -c:v libtheora -q:v 5 
  -c:a libvorbis -q:a 5 
linuxmi.ogg
39bc8cc0-e5e2-11ed-ab56-dac502259ad0.png

-q:v(視頻)和-q:a(音頻)是可變比特率 (VBR) 質(zhì)量級別的選項。取值范圍是 1-31,其中 1 是最高質(zhì)量,31 是最低質(zhì)量?;蛘?,它們分別與-qscale:v和-qscale:a相同。

1.4 轉(zhuǎn)換為 GIF


ffmpeg -i linuxmi.mov 
  -vf " 
    scale=960:-1, 
    fps=16, 
    split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse
  " 
  -loop 0 
linuxmi.gif

1.5 保持原始編碼


ffmpeg -i linuxmi.mov -c copy linuxmi.com.mov
這會創(chuàng)建源文件的副本。

1.6 移除音軌


ffmpeg -i linuxmi.mov -c:v copy -an linuxmi.mp4
-an用于刪除音軌,同時通過-c:v copy選項保留視頻軌道。

1.7 將第 99 幀導(dǎo)出為圖像


ffmpeg -i linuxmi.mov 
  -vf "select=eq(n, 98)" -vframes 1 
linuxmi.png
由于幀數(shù)從 0 開始,所以選項應(yīng)該是"select=eq(n, 98)",而不是"select=eq(n, 99)"。

1.8 5秒導(dǎo)出一幀到一張圖片


ffmpeg -i linuxmi.mov -ss 00:05:00 -vframes 1 linuxmi.png

2.高級編輯功能

您可以將以下選項與上述任何編解碼器設(shè)置結(jié)合使用。

2.1 從源文件中剪切特定范圍


ffmpeg -i linuxmi.mov 
  -ss 00:05:00 -t 12 
linuxmi.mp4
輸出文件將從源文件的 5 分鐘開始,最大長度為 12 秒,這意味著如果源文件長于該時間,則輸出視頻將在源視頻的 0012 結(jié)束。

或者,-ss 0000 -to 0012或-ss 300 -t 12可用于相同的結(jié)果。-ss可以不帶-t選項使用。

2.2 調(diào)整視頻大小

調(diào)整為 1920x1080



linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                              
 ffmpeg -i linuxmi.mov  -vf "scale=1920:1080"  linuxmi.mp4

39c62dfc-e5e2-11ed-ab56-dac502259ad0.png

將寬度調(diào)整為 1920 保持源比率


ffmpeg -i linuxmi.mov 
  -vf "scale=1920:-1" 
linuxmi.mp4

將寬度調(diào)整為 1920,但使用黑色填充將高度設(shè)置為 2160


ffmpeg -i linuxmi.mov 
  -vf "scale=1920:-1, pad=1920-1color=black" 
linuxmi.mp4

2.3 改變視頻播放速度

2 倍速度


ffmpeg -i linuxmi.mov 
  -vf "setpts=PTS/2" 
  -af "asetpts=PTS/2" 
linuxmi.mp4

1/2x 速度


ffmpeg -i linuxmi.mov 
  -vf "setpts=PTS/.5" 
  -af "asetpts=PTS/.5" 
linuxmi.mp4
PTS代表演示時間戳。您可以通過分別在視頻過濾器 ( -vf) 和音頻過濾器 ( -af)上給出不同的數(shù)字來應(yīng)用不同的視頻和音頻速度。

2.4 設(shè)置每秒幀數(shù)(FPS)


ffmpeg -i linuxmi.mov -vf "fps=30" linuxmi.mp4

2.5 合并多個視頻


ffmpeg -safe 0 -f concat 
  -i <( 
    for f in $PWD/*.@(mov|mp4); do 
      printf "file ${f}
"; 
    done; 
  ) 
  -c copy 
linuxmi.mov
上面的命令將當(dāng)前目錄中的所有 .mov 和 .mp4 文件合并并創(chuàng)建output.mov文件。所有視頻必須具有相同的尺寸比以避免拉伸或變形。

2.6 設(shè)置畫面組(GOP)

GOP(Group of Pictures)策略影響編碼質(zhì)量,所謂GOP,意思是畫面組,一個GOP就是一組連續(xù)的畫面。


ffmpeg -i linuxmi.mov -g 300 linuxmi.mp4 GOP 表示兩個關(guān)鍵幀之間的距離。

2.7 復(fù)制源媒體的元數(shù)據(jù)


ffmpeg -i source.mov 
  -map_metadata 0 -movflags use_metadata_tags 
linuxmi.mp4
由于某些視頻存儲自定義元數(shù)據(jù),此命令可能無法正確復(fù)制所有數(shù)據(jù)。

如果要檢查元數(shù)據(jù),請安裝exiftool并運(yùn)行:

exiftool -g1 -a -s -gps* linuxmi.mp4`
或者,您可以使用 exiftool 復(fù)制元數(shù)據(jù),如下所示:

exiftool -tagsFromFile source.mov -All:All linuxmi.mp4

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207918
  • 編解碼器
    +關(guān)注

    關(guān)注

    0

    文章

    234

    瀏覽量

    24135
  • 音視頻
    +關(guān)注

    關(guān)注

    4

    文章

    452

    瀏覽量

    29782
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    658

    瀏覽量

    21929
  • ffmpeg
    +關(guān)注

    關(guān)注

    0

    文章

    46

    瀏覽量

    7360

原文標(biāo)題:音視頻圖像處理神器 FFmpeg 有用的命令示例

文章出處:【微信號:Linux迷,微信公眾號:Linux迷】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Linux下基于ffmpeg音視頻解碼

    FFmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開源計算機(jī)程序。采用LGPL或GPL許可證。它提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案。它包含了非常先進(jìn)的音頻/視頻
    的頭像 發(fā)表于 09-29 14:28 ?3375次閱讀
    Linux下基于<b class='flag-5'>ffmpeg</b><b class='flag-5'>音視頻</b>解碼

    最新的高效音視頻編碼及視頻圖像處理

    本帖最后由 mr.pengyongche 于 2013-4-30 02:58 編輯 最新的高效音視頻編碼及視頻圖像處理技術(shù)在視頻領(lǐng)域
    發(fā)表于 10-11 16:39

    2款音視頻處理芯片

    Package: 20mm x 20mm 144-pin TQFP with ePad集成電路 (IC) > 接口 - 音視頻處理芯片50元/片2、SII9334CTU (SILICON
    發(fā)表于 11-26 15:28

    2.4G和5.8G音視頻概述

    解調(diào),使模塊體積小功耗低靈敏度高等特點;采取貼片或是插件封裝形式,方便用戶的安裝要求。本模塊的應(yīng)用只需簡單連接電源,單/雙音頻線,視頻線,接上天線就可接收音樂、圖像信號。SKY-TX24017無線音視頻
    發(fā)表于 11-29 10:49

    【OK210申請】智能音視頻處理平臺

    申請理由:首先在音視頻處理上面210本身就是一個不錯的選擇,并且飛凌在210系列中有很多通用的攝像頭模塊,方便后期的平臺的搭建。我們實驗室前幾年購買了十幾套飛凌的6410-A的開發(fā)板套裝,使用起來
    發(fā)表于 07-20 10:45

    【OK210申請】智能音視頻處理平臺

    申請理由:首先是以前買過幾套飛凌6410的板子,感覺質(zhì)量和售后都挺好的。再者我們團(tuán)隊準(zhǔn)備搭建一個智能音視頻研究的平臺, 向飛凌售后質(zhì)詢了一下,說是210的板子更適合做視頻處理。我們沒有接觸過210
    發(fā)表于 07-21 09:19

    dm8168 音視頻同步問題

    我在8168上用dvrrdk 4.0.03做音視頻,我的視頻和音頻都來自網(wǎng)絡(luò),經(jīng)過解碼處理后,再編碼,但是編碼后的視頻音頻數(shù)據(jù)有同步的問題,rdk里面有沒有什么接口或者API能讓
    發(fā)表于 06-23 04:51

    處理器與音視頻外設(shè)之間怎么連接?

    處理器與音視頻外設(shè)之間怎么連接?
    發(fā)表于 06-08 06:46

    什么是音視頻同步?音視頻同步的影響因素有哪些?

    什么是音視頻同步?有什么要求?音視頻同步的影響因素有哪些?音視頻同步的常見技術(shù)有哪些?
    發(fā)表于 06-15 08:48

    FFMPEG如何進(jìn)行音視頻同步的

      PCR同步在非硬件精確時鐘源的情況還是謹(jǐn)慎使用,我起初采用PCR同步就會出現(xiàn),隨著時間的推移,軟件模擬的時鐘不精確會導(dǎo)致視頻出現(xiàn)延時或者音視頻不同步。  最近研究了FFMPEG的同步技巧,覺得其
    發(fā)表于 08-23 16:27

    音視頻

    音視頻技術(shù)都喜歡深究內(nèi)部最核心的原理和機(jī)制,尤其是ffmpeg這個編解碼庫,可以說是音視頻領(lǐng)域事實上的標(biāo)準(zhǔn)。語音智能算法,語言語義分析和理解,流媒體服務(wù)器等高端技術(shù)也都基于它而構(gòu)建。希望有幸獲得本書,深度學(xué)習(xí)
    發(fā)表于 11-23 08:51

    Blackfin處理器與音視頻外設(shè)之間的連接

    Blackfin®處理器與音視頻外設(shè)之間的連接:課程單元:Blackfin®處理器與音視頻外設(shè)之間的連接主講人:David Katz第1章:簡介第2章:連接至音頻轉(zhuǎn)換器
    發(fā)表于 09-02 12:36 ?23次下載

    音視頻/信號分配器,音視頻/信號分配器是什么意思

    音視頻/信號分配器,音視頻/信號分配器是什么意思     音視分配器專為音視頻信號在傳播中進(jìn)行分配而設(shè)計,適用于KTV、MTV
    發(fā)表于 03-26 09:51 ?2642次閱讀

    ffmpeg支持的音視頻格式有哪些

    FFmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開源計算機(jī)程序。采用LGPL或GPL許可證。它提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案。它包含了非常先進(jìn)的音頻/視頻
    發(fā)表于 11-01 08:43 ?2.2w次閱讀

    音視頻集成是什么 音視頻視頻有什么區(qū)別

    音視頻集成是將音頻和視頻設(shè)備、系統(tǒng)和技術(shù)進(jìn)行整合,以實現(xiàn)全面的音視頻功能和體驗的過程。
    發(fā)表于 06-19 17:14 ?2374次閱讀