使用ffmpeg或者libav進行開發時,大部分狀況下功能須要比較單一,好比是作播放器時只須要解複用和解碼模塊,甚至是隻須要一種音頻或者視頻的×××,或者須要使用ffmpeg進行指定格式的編碼、轉碼等,這時若是不對ffmpeg進行定製,而直接從官網上進行下載的話,可能須要幾十M的硬盤空間,爲了有利於產品的瘦身,須要編譯出符合自身須要的ffmpeg。windows
好比在windows下編譯ffmpeg的configure參數(MinGW):ide
./configure --enable-shared --enable-gpl --enable-version3 --disable-doc --disable-ffplay --disable-ffprobe --disable-ffserver --disable-network --disable-avfilter --enable-memalign-hack --disable-everything --enable-decoder=h264 --enable-decoder=mp3 --enable-decoder=aac --disable-debug --enable-pthreads --disable-filters --extra-cflags="-I/C/MinGW/include" --extra-ldflags="-L/C/MinGW/lib"編碼
這裏我只須要h.26四、mp3和aac三種×××,因此使用--enable-decoder=h264 --enable-decoder=mp3 --enable-decoder=aac進行激活,而其它的則所有disbale,這樣我本身編譯出的ffmpeg動態庫就很小了,以下圖:spa
其實經過configure參數,還能夠編譯出更小的動態庫,不過目前的這種大小已經夠咱們使用了。
debug