ffmpeg 編譯列表詳解

1、執行如下命令:./configure --help

ffmpeg-3.3.9# ./configure --help
Usage: configure [options]

Options: [defaults in brackets after descriptions]
​

Help options:
  --help                   print this message
  --quiet                  Suppress showing informative output
  --list-decoders          show all available decoders

  --list-encoders          show all available encoders
  --list-hwaccels          show all available hardware accelerators
  --list-demuxers          show all available demuxers
  --list-muxers            show all available muxers
  --list-parsers           show all available parsers
  --list-protocols         show all available protocols
  --list-bsfs              show all available bitstream filters
  --list-indevs            show all available input devices
  --list-outdevs           show all available output devices
  --list-filters           show all available filters
​
Standard options:
  --logfile=FILE           log tests and output to FILE [ffbuild/config.log]
  --disable-logging        do not log configure debug information
  --fatal-warnings         fail if any configure warning is generated
  

  我們這個已經設置了
  --prefix=PREFIX          install in PREFIX [/usr/local]  
  

  把我們設置的perfix 賦值到此處這裏來
  --bindir=DIR             install binaries in DIR [PREFIX/bin] 
  

  把我們設置的perfix 賦值到此處這裏來
  --datadir=DIR            install data files in DIR [PREFIX/share/ffmpeg] 
  

  把我們設置的perfix 賦值到此處這裏來
  --docdir=DIR             install documentation in DIR [PREFIX/share/doc/ffmpeg] 
  

  把我們設置的perfix 賦值到此處這裏來

  --libdir=DIR             install libs in DIR [PREFIX/lib] 
  --shlibdir=DIR           install shared libs in DIR [LIBDIR]
  

  把我們設置的perfix 賦值到此處這裏來
  --incdir=DIR             install includes in DIR [PREFIX/include] 
  

  把我們設置的perfix 賦值到此處這裏來

  --mandir=DIR             install man page in DIR [PREFIX/share/man] 
  --pkgconfigdir=DIR       install pkg-config files in DIR [LIBDIR/pkgconfig]
  --enable-rpath           use rpath to allow installing libraries in paths
                           not part of the dynamic linker search path
                           use rpath when linking programs (USE WITH CARE)
  --install-name-dir=DIR   Darwin directory name for installed targets
​
Licensing options:
  --enable-gpl             allow use of GPL code, the resulting libs
                           and binaries will be under GPL [no]
  --enable-version3        upgrade (L)GPL to version 3 [no]
  --enable-nonfree         allow use of nonfree code, the resulting libs
                           and binaries will be unredistributable [no]
​

Configuration options:  disable不開啓,所以還需要看後面有沒有[on]

  --disable-static         do not build static libraries [no] 默認開啓 靜態庫

  --enable-shared          build shared libraries [no] 默認不開啓 動態庫

  --enable-small           optimize for size instead of speed  可以優化庫的大小,可以嘗試加入進去
  --disable-runtime-cpudetect disable detecting CPU capabilities at runtime (smaller binary)
  --enable-gray            enable full grayscale support (slower color)
  --disable-swscale-alpha  disable alpha channel support in swscale
  --disable-all            disable building components, libraries and programs
  --disable-autodetect     disable automatically detected external libraries [no]
​
Program options:
  我們不需要使用程序,不需要在Windows中執行,某.exe程序,我們只需要在代碼中使用  [此命令操作的是下面三項]
  --disable-programs       do not build command line programs   
  
  --disable-ffmpeg         disable ffmpeg build
  --disable-ffplay         disable ffplay build
  --disable-ffprobe        disable ffprobe build
​
Documentation options:
  --disable-doc            do not build documentation
  --disable-htmlpages      do not build HTML documentation pages
  --disable-manpages       do not build man documentation pages
  --disable-podpages       do not build POD documentation pages
  --disable-txtpages       do not build text documentation pages
​
FFmpeg 是由各個模塊所組成的
FFmpeg是一套可以用來記錄、轉換數字音頻、視頻,並能將其轉化爲流的開源計算機程序。它包括了領先的音/視頻編碼庫libavcodec等。
libavformat:用於各種音視頻封裝格式的生成和解析,包括獲取解碼所需信息以生成解碼上下文結構和讀取音視頻幀等功能;
libavcodec:用於各種類型聲音/圖像編解碼;
libavutil:包含一些公共的工具函數;
libswscale:用於視頻場景比例縮放、色彩映射轉換;
libpostproc:用於後期效果處理;
ffmpeg:該項目提供的一個工具,可用於格式轉換、解碼或電視卡即時編碼等;
ffsever:一個 HTTP 多媒體即時廣播串流服務器;
ffplay:是一個簡單的播放器,使用ffmpeg 庫解析和解碼,通過SDL顯示;
​
Component options:
  --disable-avdevice       disable libavdevice build  可以操作我們的攝像頭(但是在Android中是不支持的),視頻輸出等等
  --disable-avcodec        disable libavcodec build   包含了音視頻編解碼的東西,默認是開啓的,肯定不能關閉掉
  --disable-avformat       disable libavformat build  默認開啓的,音視頻封裝格式的生成與解析
  --disable-swresample     disable libswresample build  對音頻進行重採樣的(如果想把單聲道的視頻,變成雙聲道的視頻,就需要此模塊)
  --disable-swscale        disable libswscale build   如果對一個視頻 放大 縮小  就需要此模塊
  --disable-postproc       disable libpostproc build  後期處理的,這個模塊可以關閉掉
  --disable-avfilter       disable libavfilter build  給視頻加字幕,加水印,就需要此模塊,(默認開啓)
  --enable-avresample      enable libavresample build (deprecated) [no]
  --disable-pthreads       disable pthreads [autodetect]
  --disable-w32threads     disable Win32 threads [autodetect]
  --disable-os2threads     disable OS/2 threads [autodetect]
  --disable-network        disable network support [no]
  --disable-dct            disable DCT code
  --disable-dwt            disable DWT code
  --disable-error-resilience disable error resilience code
  --disable-lsp            disable LSP code
  --disable-lzo            disable LZO decoder code
  --disable-mdct           disable MDCT code
  --disable-rdft           disable RDFT code
  --disable-fft            disable FFT code
  --disable-faan           disable floating point AAN (I)DCT code
  --disable-pixelutils     disable pixel utils in libavutil
​
Individual component options:
  --disable-everything     disable all components listed below
  --disable-encoder=NAME   disable encoder NAME
  --enable-encoder=NAME    enable encoder NAME
  --disable-encoders       disable all encoders   編碼可以去關閉掉
  --disable-decoder=NAME   disable decoder NAME
  --enable-decoder=NAME    enable decoder NAME
  --disable-decoders       disable all decoders
  --disable-hwaccel=NAME   disable hwaccel NAME
  --enable-hwaccel=NAME    enable hwaccel NAME
  --disable-hwaccels       disable all hwaccels
  --disable-muxer=NAME     disable muxer NAME
  --enable-muxer=NAME      enable muxer NAME
  --disable-muxers         disable all muxers   混合封裝(音視頻等於 一段音頻 一段視頻 合併在一起 就是.mp4,不想這樣就可以關閉)
  --disable-demuxer=NAME   disable demuxer NAME
  --enable-demuxer=NAME    enable demuxer NAME
  --disable-demuxers       disable all demuxers
  --enable-parser=NAME     enable parser NAME
  --disable-parser=NAME    disable parser NAME
  --disable-parsers        disable all parsers
  --enable-bsf=NAME        enable bitstream filter NAME
  --disable-bsf=NAME       disable bitstream filter NAME
  --disable-bsfs           disable all bitstream filters
  --enable-protocol=NAME   enable protocol NAME
  --disable-protocol=NAME  disable protocol NAME
  --disable-protocols      disable all protocols
  --enable-indev=NAME      enable input device NAME
  --disable-indev=NAME     disable input device NAME
  --disable-indevs         disable input devices
  --enable-outdev=NAME     enable output device NAME
  --disable-outdev=NAME    disable output device NAME
  --disable-outdevs        disable output devices
  --disable-devices        disable all devices
  --enable-filter=NAME     enable filter NAME
  --disable-filter=NAME    disable filter NAME
  --disable-filters        disable all filters


備註說明:–disable 代表關閉狀態
–enable 代表開啓狀態

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章