ffmpeg編譯選項彙總

編譯禁用「jack」 和 「crystalhd」 :html

--disable-crystalhd
--disable-indev=jacklinux

===========================================================web

http://blog.chinaunix.net/uid-24868917-id-120539.htmlredis

在控制檯輸入以下命令可看到 ffmpeg 詳細的編譯選項。
[root@localhost ffmpeg]# ./configure --help

 

 

Usage: configure [options]
Options: [defaults in brackets after descriptions]

Standard options:
  --help                   print this message
  --logfile=FILE           log tests and output to FILE [config.log]
  --disable-logging        do not log configure debug information

------------------------------------------------------------------------------
這幾個參數重要,決定了ffmpeg編譯出來的文件放在系統的什麼地方。 
                         
  --prefix=PREFIX          install in PREFIX []
  --bindir=DIR             install binaries in DIR [PREFIX/bin]
  --datadir=DIR            install data files in DIR [PREFIX/share/ffmpeg]
  --libdir=DIR             install libs in DIR [PREFIX/lib]
  --shlibdir=DIR           install shared libs in DIR [PREFIX/lib]
  --incdir=DIR             install includes in DIR [PREFIX/include]
  --mandir=DIR             install man page in DIR [PREFIX/share/man]
------------------------------------------------------------------------------
Configuration options:
  --disable-static         do not build static libraries [no]
  --enable-shared          build shared libraries [no]
  --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]
------------------------------------------------------------------------------
這些文ffmpeg目錄下的文件
  --disable-doc            do not build documentation
  --disable-ffmpeg         disable ffmpeg build
  --disable-ffplay         disable ffplay build
  --disable-ffprobe        disable ffprobe build
  --disable-ffserver       disable ffserver build
  --disable-avdevice       disable libavdevice build
  --disable-avcodec        disable libavcodec build
  --disable-avcore         disable libavcore build
  --disable-avformat       disable libavformat build
  --disable-swscale        disable libswscale build
  --enable-postproc        enable GPLed postprocessing support [no]
  --disable-avfilter       disable video filter support [no]
-------------------------------------------------------------------------------
  --disable-pthreads       disable pthreads [auto]
  --enable-w32threads      use Win32 threads [no]
  --enable-x11grab         enable X11 grabbing [no]
  --disable-network        disable network support [no]
  --disable-mpegaudio-hp   faster (but less accurate) MPEG audio decoding [no]
  --enable-gray            enable full grayscale support (slower color)
  --disable-swscale-alpha  disable alpha channel support in swscale
  --disable-fastdiv        disable table-based division
  --enable-small           optimize for size instead of speed
  --disable-aandct         disable AAN DCT code
  --disable-dct            disable DCT code
  --disable-fft            disable FFT code
  --disable-golomb         disable Golomb code
  --disable-huffman        disable Huffman code
  --disable-lpc            disable LPC code
  --disable-mdct           disable MDCT code
  --disable-rdft           disable RDFT code
  --disable-vaapi          disable VAAPI code
  --disable-vdpau          disable VDPAU code
  --disable-dxva2          disable DXVA2 code
  --enable-runtime-cpudetect detect cpu capabilities at runtime (bigger binary)
  --enable-hardcoded-tables use hardcoded tables instead of runtime generation
  --enable-memalign-hack   emulate memalign, interferes with memory debuggers

  這個選項 牛B 啊!
  --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
  --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
  --disable-indev=NAME     disable input device NAME
  --disable-outdev=NAME    disable output device NAME
  --disable-indevs         disable input devices
  --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

  --list-decoders          show all available decoders
  --list-encoders          show all available encoders
  --list-hwaccels          show all available hardware accelerators
  --list-muxers            show all available muxers
  --list-demuxers          show all available demuxers
  --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
----------------------------------------------------------------------------------
ffmpeg支持的外部解碼庫。ffmpeg爲咱們保留了這些解碼庫的swap(空殼子)。
當ffmpeg要支持這些文件格式時,那個這些解碼庫需咱們手動的添加。固然ffmpeg也爲咱們自帶
了 avi 這種常見視頻格式的解碼庫,這樣就不須要咱們手動添加了。

External library support:
  --enable-avisynth        enable reading of AVISynth script files [no]
  --enable-bzlib           enable bzlib [autodetect]
  --enable-frei0r          enable frei0r video filtering
  --enable-libopencore-amrnb enable AMR-NB de/encoding via libopencore-amrnb [no]
  --enable-libopencore-amrwb enable AMR-WB decoding via libopencore-amrwb [no]
  --enable-libopencv       enable video filtering via libopencv [no]
  --enable-libdc1394       enable IIDC-1394 grabbing using libdc1394
                           and libraw1394 [no]
  --enable-libdirac        enable Dirac support via libdirac [no]
  --enable-libfaac         enable FAAC support via libfaac [no]
  --enable-libgsm          enable GSM support via libgsm [no]
  --enable-libmp3lame      enable MP3 encoding via libmp3lame [no]
  --enable-libnut          enable NUT (de)muxing via libnut,
                           native (de)muxer exists [no]
  --enable-libopenjpeg     enable JPEG 2000 decoding via OpenJPEG [no]
  --enable-librtmp         enable RTMP[E] support via librtmp [no]
  --enable-libschroedinger enable Dirac support via libschroedinger [no]
  --enable-libspeex        enable Speex decoding via libspeex [no]
  --enable-libtheora       enable Theora encoding via libtheora [no]
  --enable-libvorbis       enable Vorbis encoding via libvorbis,
                           native implementation exists [no]
  --enable-libvpx          enable VP8 support via libvpx [no]
  
  x264爲新一代H.264標準的編解碼器,它與2003年發佈。在同行中編解碼的效率是但是至關之高 。
  質量可超 rmvb。
  2011年又宣佈支持藍光編解碼,可謂至關給力。
  --enable-libx264         enable H.264 encoding via x264 [no]

  --enable-libxavs         enable AVS encoding via xavs [no]

  xvid 爲老一代的編解碼器。
  --enable-libxvid         enable Xvid encoding via xvidcore,
                           native MPEG-4/Xvid encoder exists [no]
  --enable-mlib            enable Sun medialib [no]
  --enable-zlib            enable zlib [autodetect]

Advanced options (experts only):
  --source-path=PATH       path to source code [/opt/friendlyarm/video/ffmpeg]
  --cross-prefix=PREFIX    use PREFIX for compilation tools []
  --enable-cross-compile   assume a cross-compiler is used
  --sysroot=PATH           root of cross-build tree
  --sysinclude=PATH        location of cross-build system headers
  --target-os=OS           compiler targets OS []
  --target-exec=CMD        command to run executables on target
  --target-path=DIR        path to view of build directory on target
  --nm=NM                  use nm tool
  --ar=AR                  use archive tool AR [ar]
  --as=AS                  use assembler AS []
  --cc=CC                  use C compiler CC [gcc]
  --ld=LD                  use linker LD
  --host-cc=HOSTCC         use host C compiler HOSTCC
  --host-cflags=HCFLAGS    use HCFLAGS when compiling for host
  --host-ldflags=HLDFLAGS  use HLDFLAGS when linking for host
  --host-libs=HLIBS        use libs HLIBS when linking for host
  --extra-cflags=ECFLAGS   add ECFLAGS to CFLAGS []
  --extra-ldflags=ELDFLAGS add ELDFLAGS to LDFLAGS []
  --extra-libs=ELIBS       add ELIBS []
  --extra-version=STRING   version string suffix []
  --build-suffix=SUFFIX    library name suffix []
  --arch=ARCH              select architecture []
  --cpu=CPU                select the minimum required CPU (affects
                           instruction selection, may crash on older CPUs)
  --disable-asm            disable all assembler optimizations
  --disable-altivec        disable AltiVec optimizations
  --disable-amd3dnow       disable 3DNow! optimizations
  --disable-amd3dnowext    disable 3DNow! extended optimizations
  --disable-mmx            disable MMX optimizations
  --disable-mmx2           disable MMX2 optimizations
  --disable-sse            disable SSE optimizations
  --disable-ssse3          disable SSSE3 optimizations
  --disable-armv5te        disable armv5te optimizations
  --disable-armv6          disable armv6 optimizations
  --disable-armv6t2        disable armv6t2 optimizations
  --disable-armvfp         disable ARM VFP optimizations
  --disable-iwmmxt         disable iwmmxt optimizations
  --disable-mmi            disable MMI optimizations
  --disable-neon           disable neon optimizations
  --disable-vis            disable VIS optimizations
  --disable-yasm           disable use of yasm assembler
  --enable-pic             build position-independent code
  --malloc-prefix=PFX      prefix malloc and related names with PFX
  --enable-sram            allow use of on-chip SRAM
  --disable-symver         disable symbol versioning

Developer options (useful when working on FFmpeg itself):
  --disable-debug          disable debugging symbols
  --enable-debug=LEVEL     set the debug level []
  --disable-optimizations  disable compiler optimizations
  --enable-extra-warnings  enable more compiler warnings
  --disable-stripping      disable stripping of executables and shared libraries
  --samples=PATH           location of test samples for FATE

NOTE: Object files are built at the place where configure is launched.

-----------------------------------------------------------------------------------

如下翻譯來自網絡,ffmpeg的版本未知,放在一塊兒只是爲了參考下。


[root@web ffmpeg]# ./configure --help

Usage: configure [options]
Options: [defaults in brackets after descriptions]

Standard options:          基本選項參數
  --help                   顯示此幫助信息|print this message
  --log[=FILE|yes|no]      記錄測試並輸出到config.err文件|log tests and output to FILE [config.err]
  --prefix=PREFIX          安裝程序到指定目錄(默認/usr/local)|install in PREFIX [/usr/local]
  --libdir=DIR             安裝庫到指定目錄(默認prefix/lib)|install libs in DIR [PREFIX/lib]
  --shlibdir=DIR           指定共享庫路徑(默認prefix/lib)|install shared libs in DIR [PREFIX/lib]
  --incdir=DIR             指定includes路徑(默認prefix/include/ffmpeg)|install includes in DIR[PREFIX/include/ffmpeg]
  --mandir=DIR             指定man page路徑(默認prefix/maninstall man page in DIR [PREFIX/man]
  --enable-mp3lame         啓用mp3編碼libmp3lame(默認關閉)enable MP3 encoding via libmp3lame[default=no]
  --enable-libogg          啓用ogg支持libogg(默認關閉)enable Ogg support via libogg [default=no]
  --enable-vorbis          啓用Vorbis支持libvorbis(默認關閉)enable Vorbis support via libvorbis [default=no]
  --enable-faad            啓用faad支持libfaad(默認關閉)enable FAAD support via libfaad [default=no]
  --enable-faadbin         啓用faad運行時連接支持(默認關閉)build FAAD support with runtime linking[default=no]
  --enable-faac            啓用faac支持libfaac(默認關閉)enable FAAC support via libfaac [default=no]
  --enable-libgsm          啓用GSM支持libgsm(默認關閉)enable GSM support via libgsm [default=no]
  --enable-xvid            啓用xvid支持xvidcore(默認關閉)enable XviD support via xvidcore [default=no]
  --enable-x264            啓用H.264編碼(默認關閉)enable H.264 encoding via x264 [default=no]
  --enable-mingw32         啓用MinGW本地/交叉win環境編譯|enable MinGW native/cross Windows compile
  --enable-mingwce         啓用MinGW本地/交叉winCE環境編譯enable MinGW native/cross WinCE compile
  --enable-a52             啓用A52支持(默認關閉)enable GPLed A52 support [default=no]
  --enable-a52bin          啓用運行時打開liba52.so.0(默認關閉)open liba52.so.0 at runtime [default=no]
  --enable-dts             啓用DTS支持(默認關閉)enable GPLed DTS support [default=no]
  --enable-pp              啓用後加工支持(默認關閉)enable GPLed postprocessing support [default=no]
  --enable-static          構建靜態庫(默認啓用)build static libraries [default=yes]
  --disable-static         禁止構建靜態庫(默認關閉)do not build static libraries [default=no]
  --enable-shared          構建共享庫(默認關閉)build shared libraries [default=no]
  --disable-shared         禁止構建共享庫(默認啓用)do not build shared libraries [default=yes]
  --enable-amr_nb          啓用amr_nb float音頻編解碼器|enable amr_nb float audio codec
  --enable-amr_nb-fixed    啓用fixed amr_nb codec | use fixed point for amr-nb codec
  --enable-amr_wb          啓用amr_wb float音頻編解碼器|enable amr_wb float audio codec
  --enable-amr_if2         啓用amr_wb IF2音頻編解碼器|enable amr_wb IF2 audio codec
  --enable-sunmlib         啓用Sun medialib(默認關閉) | use Sun medialib [default=no]
  --enable-pthreads        啓用pthreads(多線程)(默認關閉)use pthreads [default=no]
  --enable-dc1394          啓用libdc139四、libraw1394抓取IIDC-1394(默認關閉)enable IIDC-1394 grabbing using libdc1394 

and 

libraw1394 [default=no]
  --enable-swscaler        啓用計數器支持?(默認關閉)software scaler support [default=no]
  --enable-avisynth        容許讀取AVISynth腳本本件(默認關閉)allow reading AVISynth script files [default=no]
  --enable-gpl             容許使用GPL(默認關閉)allow use of GPL code, the resulting libav* and ffmpeg will be under 

GPL 

[default=no]

Advanced options (experts only): 高級選項參數(供專業人員使用)
  --source-path=PATH       源碼的路徑(當前爲/root/flv/ffmpeg)| path to source code [/root/flv/ffmpeg]
  --cross-prefix=PREFIX    爲編譯工具指定路徑 | use PREFIX for compilation tools []
  --cross-compile          假定使用了交叉編譯 | assume a cross-compiler is used
  --cc=CC                  指定使用何種C編譯器(默認gcc)use C compiler CC [gcc]
  --make=MAKE              使用特定的make | use specified make [make]
  --extra-cflags=ECFLAGS   添加ECFLAGS到CFLAGS | add ECFLAGS to CFLAGS []
  --extra-ldflags=ELDFLAGS 添加ELDFLAGS到LDFLAGS(默認-Wl,--as-needed)| add ELDFLAGS to LDFLAGS [ -Wl,--as-needed]
  --extra-libs=ELIBS       添加ELIBS | add ELIBS []
  --build-suffix=SUFFIX    爲專用程序添加後綴 | suffix for application specific build []
  --arch=ARCH              選擇機器架構(默認x86)select architecture  [x86]
  --cpu=CPU                選用最低的cpu(影響指令的選擇,能夠在老CPU上出錯) | selects the minimum cpu required 

(affects 

instruction selection, may crash on older CPUs)
  --powerpc-perf-enable    啓用PPC上面的性能報告(須要啓用PMC)enable performance report on PPC
                           (requires enabling PMC)
  --disable-mmx            禁用MMX | disable MMX usage
  --disable-armv5te        禁用armv5te | disable armv5te usage
  --disable-iwmmxt         禁用iwmmxt | disable iwmmxt usage
  --disable-altivec        禁用AltiVec | disable AltiVec usage
  --disable-audio-oss      禁用OSS音頻支持(默認啓用)disable OSS audio support [default=no]
  --disable-audio-beos     禁用BeOS音頻支持(默認啓用)disable BeOS audio support [default=no]
  --disable-v4l            禁用video4linux提取(默認啓用)disable video4linux grabbing [default=no]
  --disable-v4l2           禁用video4linux2提取(默認啓用)disable video4linux2 grabbing [default=no]
  --disable-bktr           禁用bktr視頻提取(默認啓用)disable bktr video grabbing [default=no]
  --disable-dv1394         禁用DV1394提取(默認啓用)disable DV1394 grabbing [default=no]
  --disable-network        禁用網絡支持(默認支持)disable network support [default=no]
  --disable-ipv6           禁用ipv6支持(默認支持)disable ipv6 support [default=no]
  --disable-zlib           禁用zlib(默認支持)disable zlib [default=no]
  --disable-simple_idct    禁用simple IDCT例程(默認啓用)disable simple IDCT routines [default=no]
  --disable-vhook          禁用video hooking支持 | disable video hooking support
  --enable-gprof           enable profiling with gprof [no]
  --disable-debug          禁用調試符號 | disable debugging symbols
  --disable-opts           禁用編譯器最優化 | disable compiler optimizations
  --disable-mpegaudio-hp   啓用更快的解碼MPEG音頻(但精確度較低)(默認禁用)faster (but less accurate) MPEG audio 

decoding 

[default=no]
  --disable-protocols      禁用 I/O 協議支持(默認啓用)disable I/O protocols support [default=no]
  --disable-ffserver       禁用生成ffserver | disable ffserver build
  --disable-ffplay         禁用生成ffplay | disable ffplay build
  --enable-small           啓用優化文件尺寸大小(犧牲速度)optimize for size instead of speed
  --enable-memalign-hack   啓用模擬內存排列,由內存調試器干涉? | emulate memalign, interferes with memory debuggers
  --disable-strip          禁用剝離可執行程序和共享庫 | disable stripping of executables and shared libraries
  --disable-encoder=NAME   禁用XX編碼器 | disables encoder NAME
  --enable-encoder=NAME    啓用XX編碼器 | enables encoder NAME
  --disable-decoder=NAME   禁用XX解碼器 | disables decoder NAME
  --enable-decoder=NAME    啓用XX解碼器 | enables decoder NAME
  --disable-encoders       禁用全部編碼器 | disables all encoders
  --disable-decoders       禁用全部解碼器 | disables all decoders
  --disable-muxer=NAME     禁用XX混音器 | disables muxer NAME
  --enable-muxer=NAME      啓用XX混音器 | enables muxer NAME
  --disable-muxers         禁用全部混音器 | disables all muxers
  --disable-demuxer=NAME   禁用XX解軌器 | disables demuxer NAME
  --enable-demuxer=NAME    啓用XX解軌器 | enables demuxer NAME
  --disable-demuxers       禁用全部解軌器 | disables all demuxers
  --enable-parser=NAME     啓用XX剖析器 | enables parser NAME
  --disable-parser=NAME    禁用XX剖析器 | disables parser NAME
  --disable-parsers        禁用全部剖析器 | disables all parsers

=========================================================api

http://blog.csdn.net/pointfish/article/details/7558140網絡

已經測試,能夠解碼H264和RTP, LIB和DLL一共2.7M

./configure --disable-everything --disable-muxers --disable-avdevice --disable-armv5te --disable-armv6 --disable-armv6t2 --disable-armvfp --disable-zlib --disable-bzlib --disable-debug --disable-ffmpeg --disable-ffserver --disable-ffplay --disable-muxers --disable-filters --disable-devices --disable-encoders --disable-hwaccels --enable-static --enable-memalign-hack --enable-small --enable-decoder=h264 --enable-demuxers --enable-parsers --enable-protocols




附1:

打包靜態庫的命令

gcc -shared -fPIC -o ffmpeg-0.8.dll -Wl,--whole-archive libswscale.a libavcodec.a libavfilter.a libavutil.a libavformat.a -Wl,--no-whole-archive -lwsock32 -lpthread -lSDL -lvfw32

附2:

打包靜態庫出現的BUG

1)若出現重複定義則找到avdecoec的makefile

OBJS-$(!CONFIG_SMALL)                   += inverse.o

編譯時出現的BUG(編DLL時出現,或打包成DLL時也會出現)

1) ff_svq3_add_idct_c等沒法識別,link錯誤

用在h264.c裏#if CONFIG_SVQ3_DECODER和#endif註釋掉這些函數

 

 

小弟愚鈍翻譯的很不標準 將就着看吧
   --help                   print this message
   --logfile=FILE           log tests and output to FILE [config.err]          //測試和輸出到文件記錄
  --disable-logging        do not log configure debug information             //不要日誌調試的信息
  --prefix=PREFIX          install in PREFIX []                               //安裝在前綴
  --bindir=DIR             install binaries in DIR [PREFIX/bin]               //安裝2進制文件
  --datadir=DIR            install data files in DIR [PREFIX/share/ffmpeg]    //安裝數據文件目錄
  --libdir=DIR             install libs in DIR [PREFIX/lib]                   //安裝lib文件目錄
  --shlibdir=DIR           install shared libs in DIR [PREFIX/lib]            //安裝分享lib在目錄
  --incdir=DIR             install includes in DIR [PREFIX/include]           //安裝include在目錄
  --mandir=DIR             install man page in DIR [PREFIX/share/man]         //安裝手頁冊到目錄

Configuration options:
   --disable-static         do not build static libraries [no]                 //不創建靜態庫
  --enable-shared          build shared libraries [no]                        // 創建共享庫
  --enable-gpl             allow use of GPL code, the resulting libs          //容許GPL代碼 生成在lib 和2進制文件
                           and binaries will be under GPL [no]               
   --enable-nonfree         allow use of nonfree code, the resulting libs      //容許nonfree代碼生成lib 和2進制文件
                           and binaries will be unredistributable [no]
   --disable-ffmpeg         disable ffmpeg build                                //取消創建ffmpeg
   --disable-ffplay         disable ffplay build                                //
   --disable-ffserver       disable ffserver build                              //
   --enable-postproc        enable GPLed postprocessing support [no]            //使GPled後置處理支持        
   --enable-avfilter        video filter support [no]                           //視頻過濾支持
  --enable-avfilter-lavf   video filters dependent on avformat [no]            //依賴avformat過濾器
  --enable-beosthreads     use BeOS threads [no]                               //使用BeOS線程                            
   --enable-os2threads      use OS/2 threads [no]                               //使用OS/2線程
  --enable-pthreads        use pthreads [no]                                   //pthreads
   --enable-w32threads      use Win32 threads [no]                              //win32
   --enable-x11grab         enable X11 grabbing [no]                            //使用X11奪走
  --disable-network        disable network support [no]                        //禁用網絡支持                     
   --disable-ipv6           disable IPv6 support [no]                            //禁用ipv6支持
  --disable-mpegaudio-hp   faster (but less accurate) MPEG audio decoding [no]   //快(但不許確)的音頻解碼
  --enable-gray            enable full grayscale support (slower color)          //使全灰度支持(慢,顏色)    
   --disable-swscale-alpha  disable alpha channel support in swscale              //使alpha管道在swscale失去支持
  --disable-fastdiv        disable table-based division                          //禁用table-based的分工
  --enable-small           optimize for size instead of speed                     //優化尺寸代替速度
  --disable-aandct         disable AAN DCT code                                   //禁用AAN dct編碼
  --disable-fft            disable FFT code                                       //禁用FFT代碼
  --disable-golomb         disable Golomb code                                    //禁用Golomb代碼
  --disable-mdct           disable MDCT code                                      //取消MDCT代碼
  --disable-rdft           disable RDFT code                                      //取消RDFT代碼
  --enable-runtime-cpudetect detect cpu capabilities at runtime (bigger binary)   //檢測cpu的能力在運行時(更大的2進制)
  --enable-hardcoded-tables use hardcoded tables instead of runtime generation    //使用編碼表替換運行時產生
  --enable-memalign-hack   emulate memalign, interferes with memory debuggers     //模仿memalign影響記憶的調試器
  --enable-beos-netserver  enable BeOS netserver                                  //使用beos netserver
   --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                                   //禁用hwaccel名字
  --enable-hwaccel=NAME    enable hwaccel NAME                                    //啓用hwaccel名字
  --disable-hwaccels       disable all hwaccels                                   //禁用全部hwaccel        
   --disable-muxer=NAME     disable muxer NAME                                     //muxer
   --enable-muxer=NAME      enable muxer NAME
   --disable-muxers         disable all muxers
   --disable-demuxer=NAME   disable demuxer NAME                                   //demuxer
   --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
   --disable-indevs         disable input devices                                //禁用輸入設備                                            
   --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                                   //禁用全部過濾器
  --list-decoders          show all available decoders                           //顯示全部可用的解碼器
  --list-encoders          show all available encoders                           //顯示全部可用的編碼器
  --list-hwaccels          show all available hardware accelerators              //顯示全部可用的硬件加速器            
   --list-muxers            show all available muxers                            
   --list-demuxers          show all available demuxers
   --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                            //顯示全部可用的過濾器

External library support:   外部庫的支持
  --enable-avisynth        enable reading of AVISynth script files [no]          //使閱讀AVISYnth腳本文件           
   --enable-bzlib           enable bzlib [autodetect]                             //設置bzuilb(自動檢測)
   --enable-libamr-nb       enable libamr-nb floating point audio codec [no]      //設置libamr-nb浮點音頻解碼
  --enable-libamr-wb       enable libamr-wb floating point audio codec [no]      //設置libamr-wb浮點音頻解碼
  --enable-libdc1394       enable IIDC-1394 grabbing using libdc1394        
                            and libraw1394 [no]
   --enable-libdirac        enable Dirac support via libdirac [no]
   --enable-libfaac         enable FAAC support via libfaac [no]
   --enable-libfaad         enable FAAD support via libfaad [no]
   --enable-libfaadbin      open libfaad.so.0 at runtime [no]
   --enable-libgsm          enable GSM support via libgsm [no]
   --enable-libmp3lame      enable MP3 encoding via libmp3lame [no]
   --enable-libnut          enable NUT (de)muxing via libnut,
                            native (de)muxer exists [no]
   --enable-libopenjpeg     enable JPEG 2000 decoding via OpenJPEG [no]
   --enable-libschroedinger enable Dirac support via libschroedinger [no]
   --enable-libspeex        enable Speex decoding via libspeex [no]
   --enable-libtheora       enable Theora encoding via libtheora [no]
   --enable-libvorbis       enable Vorbis encoding via libvorbis,
                            native implementation exists [no]
   --enable-libx264         enable H.264 encoding via x264 [no]
   --enable-libxvid         enable Xvid encoding via xvidcore,
                            native MPEG-4/Xvid encoder exists [no]
   --enable-mlib            enable Sun medialib [no]
   --enable-zlib            enable zlib [autodetect]

Advanced options (experts only):高級的選項
  --source-path=PATH       path to source code [/root/ffmpeg-r18656-iphone]                 //源代碼路徑
  --cross-prefix=PREFIX    use PREFIX for compilation tools []                              //做爲編譯工具使用的前綴                            
   --enable-cross-compile   assume a cross-compiler is used                                  //假設交叉編譯的使用                                
   --sysroot=PATH           root of cross-build tree                                         //
   --sysinclude=PATH        location of cross-build system headers                           //cross—build系統位置的標題
  --target-os=OS           compiler targets OS [linux]                                      //
   --target-exec=CMD        command to run executables on target                            //編譯器目標OS(linux)
  --target-path=DIR        path to view of build directory on target                       //創建目錄的路徑來查看目標上
  --nm=NM                  use nm tool                                                     //使用um工具                  
   --as=AS                  use assembler AS []                                             //使用匯編語言AS                                                       
   --cc=CC                  use C compiler CC [gcc]                                         //用c編譯器cc                                     
   --host-cc=HOSTCC         use host C compiler HOSTCC                                      //  使用主機C編譯器hostcc                                    
   --host-cflags=HCFLAGS    use HCFLAGS when compiling for host                             //
   --host-ldflags=HLDFLAGS  use HLDFLAGS when linking for host                              //當連接主機的時候使用libs庫                     
   --host-libs=HLIBS        use libs HLIBS when linking for host                             //lib時使用HLIBS主機連接                    
   --extra-cflags=ECFLAGS   add ECFLAGS to CFLAGS [ -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112] 
   --extra-ldflags=ELDFLAGS add ELDFLAGS to LDFLAGS []                               
   --extra-libs=ELIBS       add ELIBS []
   --extra-version=STRING   version string suffix []                                          //版本字符串後綴
  --build-suffix=SUFFIX    library name suffix []                                            //庫名字後綴                          
   --arch=ARCH              select architecture [i686]                                        //選擇建築
  --cpu=CPU                select the minimum required CPU (affects                          ////選擇最低須要cpu(影響指令的選擇可能墜毀在更老的cpu)
                           instruction selection, may crash on older CPUs) 
   --enable-powerpc-perf    enable performance report on PPC                                 //設置績效報告的ppc(須要使用pmc)
                           (requires enabling PMC)
   --disable-altivec        disable AltiVec optimizations                                     //禁用Altivec優化
  --disable-amd3dnow       disable 3DNow! optimizations                                      //禁用3DNOW優化
  --disable-amd3dnowext    disable 3DNow! extended optimizations                             //禁用3DNOW擴展優化
  --disable-mmx            disable MMX optimizations                                         //禁用MMX優化
  --disable-mmx2           disable MMX2 optimizations                                        //禁用MMX2優化
  --disable-sse            disable SSE optimizations                                         //禁用SSE優化
  --disable-ssse3          disable SSSE3 optimizations                                       //禁用SSSE3優化
  --disable-armv5te        disable armv5te optimizations                                     //禁用armv5te優化
  --disable-armv6          disable armv6 optimizations                                       //armv6
   --disable-armv6t2        disable armv6t2 optimizations                                     //armv6t2
   --disable-armvfp         disable ARM VFP optimizations                                     //arm vfp
   --disable-iwmmxt         disable iwmmxt optimizations                                      //iwmmxt
   --disable-mmi            disable MMI optimizations                                          //mmi
   --disable-neon           disable neon optimizations                                         //neon
   --disable-vis            disable VIS optimizations                                          //vis
   --disable-yasm           disable use of yasm assembler                                      //禁用yasm傷殘彙編                      

Developer options (useful when working on FFmpeg itself): 開發者選項 當工做在FFmpeg自己的時候有用
  --disable-debug          disable debugging symbols                                              //禁止調試符號
  --enable-debug=LEVEL     set the debug level []                                                  //設置調試等級
  --enable-gprof           enable profiling with gprof []                                         //設置剖析和性能分析
  --disable-optimizations  disable compiler optimizations                                        //禁用編譯器優化選項
  --enable-extra-warnings  enable more compiler warnings                                         //使更多的編譯器選項
  --disable-stripping      disable stripping of executables and shared libraries                 //禁用剝奪可執行文件和共享庫

NOTE: Object files are built at the place where configure is launched.                          //提示 :不表文件的地方是建在配置發射

=========================多線程

-----------本文轉載,原文地址已給出。架構

相關文章
相關標籤/搜索