ffmpeg/libav 定製模塊

    使用ffmpeg或者libav進行開發時,大部分情況下功能需要比較單一,比如是做播放器時只需要解複用和解碼模塊,甚至是只需要一種音頻或者視頻的解碼器,或者需要使用ffmpeg進行指定格式的編碼、轉碼等,這時如果不對ffmpeg進行定製,而直接從官網上進行下載的話,可能需要幾十M的硬盤空間,爲了有利於產品的瘦身,需要編譯出符合自身需要的ffmpeg。

    比如在windows下編譯ffmpeg的configure參數(MinGW):

    ./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.264、mp3和aac三種解碼器,所以使用--enable-decoder=h264 --enable-decoder=mp3 --enable-decoder=aac進行激活,而其它的則全部disbale,這樣我自己編譯出的ffmpeg動態庫就很小了,如下圖:


其實通過configure參數,還可以編譯出更小的動態庫,不過目前的這種大小已經夠我們使用了。

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