编译libav(ffmpeg)库

来源:互联网 发布:江湖商圈o2o源码下载 编辑:程序博客网 时间:2024/05/16 19:07
1、下载最新的yasm1.20,编译安装(最新的x264会用到)
http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
2、下载最新的x264
 export PATH=$PATH:/home/xy/mywork/av/yasm-1.2.0 ./configure  --enable-gpl


3、下载最新的libav
sudo apt-get install libsdl1.2-dev  (avplay 编译使用)http://libav.org/releases/libav-snapshot.tar.bz2export PATH=$PATH:/home/xy/mywork/av/yasm-1.2.0./configure --enable-gpl  --enable-libx264   --extra-cflags="-I/home/xy/mywork/av/x264-snapshot-20140218-2245"  --extra-ldflags="-L/home/xy/mywork/av/x264-snapshot-20140218-2245" --extra-libs="-ldl"


其中:

1、编译加--enable-libx264选项时要加--enable-gql;为了找到x264要加上--extra-cflags和--extra-ldflags,要编译x264不出错;要加上--extra-libs="-ldl"

configure的结果:

xy@xy-laptop:~/mywork/av/libav-2014-03-02$ ./configure --enable-gpl  --enable-libx264   --extra-cflags="-I/home/xy/mywork/av/x264-snapshot-20140218-2245"  --extra-ldflags="-L/home/xy/mywork/av/x264-snapshot-20140218-2245" --extra-libs="-ldl"install prefix            /usr/localsource path               .C compiler                gccC library                 glibcARCH                      x86 (generic)big-endian                noruntime cpu detection     noyasm                      yesMMX enabled               yesMMXEXT enabled            yes3DNow! enabled            yes3DNow! extended enabled   yesSSE enabled               yesSSSE3 enabled             yesAVX enabled               yesXOP enabled               yesFMA3 enabled              yesFMA4 enabled              yesi686 features enabled     yesCMOV is fast              noEBX available             yesEBP available             yesdebug symbols             yesoptimize for size         nooptimizations             yesstatic                    yesshared                    nonew filter support        yesnetwork support           yesthreading support         pthreadssafe bitstream reader     yesSDL support               noExternal libraries:libx264zlibEnabled decoders:aaccllclagarithaac_latmcomfortnoiselocoaasccookmace3ac3cscdmace6adpcm_4xmcyuvmdecadpcm_adxdcametasoundadpcm_ctdfamimicadpcm_eadnxhdmjpegadpcm_ea_maxis_xadpxmjpegbadpcm_ea_r1dsicinaudiomlpadpcm_ea_r2dsicinvideommvideoadpcm_ea_r3dvbsubmotionpixelsadpcm_ea_xasdvdsubmp1adpcm_g722dvvideomp1floatadpcm_g726dxamp2adpcm_ima_amvdxtorymp2floatadpcm_ima_apceac3mp3adpcm_ima_dk3eacmvmp3aduadpcm_ima_dk4eamadmp3adufloatadpcm_ima_ea_eacseatgqmp3floatadpcm_ima_ea_seadeatgvmp3on4adpcm_ima_isseatqimp3on4floatadpcm_ima_qteightbpsmpc7adpcm_ima_smjpegeightsvx_expmpc8adpcm_ima_waveightsvx_fibmpeg1videoadpcm_ima_wsescape124mpeg2videoadpcm_msescape130mpeg4adpcm_sbpro_2ffv1msa1adpcm_sbpro_3ffvhuffmsmpeg4v1adpcm_sbpro_4ficmsmpeg4v2adpcm_swfflacmsmpeg4v3adpcm_thpflashsvmsrleadpcm_xaflashsv2mss1adpcm_yamahaflicmss2aicflvmsvideo1alacfourxmmszhalsfrapsmts2amrnbfrwumxpegamrwbg2mnellymoseramvg723_1nuvanmgifpamansigsmpbmapegsm_mspcm_alawassh261pcm_blurayasv1h263pcm_dvdasv2h263ipcm_f32beatrac1h264pcm_f32leatrac3hevcpcm_f64beatrac3phnm4_videopcm_f64leaurahuffyuvpcm_lxfaura2iacpcm_mulawavsidcinpcm_s16bebethsoftvidiff_byterun1pcm_s16lebfiiff_ilbmpcm_s16le_planarbinkimcpcm_s24bebinkaudio_dctindeo2pcm_s24daudbinkaudio_rdftindeo3pcm_s24lebmpindeo4pcm_s24le_planarbmv_audioindeo5pcm_s32bebmv_videointerplay_dpcmpcm_s32lec93interplay_videopcm_s32le_planarcavsjpeg2000pcm_s8cdgraphicsjpeglspcm_s8_planarcdxljvpcm_u16becinepakkgv1pcm_u16lecljrkmvcpcm_u24bepcm_u24lesiprvmdaudiopcm_u32besmackaudvmdvideopcm_u32lesmackervmncpcm_u8smcvorbispcm_zorksol_dpcmvp3pcxsp5xvp5pgmsrtvp6pgmyuvsunrastvp6apgssubsvq1vp6fpictorsvq3vp8pngtakvp9ppmtargavqaprorestheorawavpackptxthpwebpqcelptiertexseqvideowmalosslessqdm2tiffwmaproqdrawtmvwmav1qpegtruehdwmav2qtrletruemotion1wmavoicer10ktruemotion2wmv1r210truespeechwmv2ra_144tsccwmv3ra_288tscc2wmv3imageralfttawnv1rawvideotwinvqws_snd1rl2txdxan_dpcmroqultixan_wc3roq_dpcmutvideoxan_wc4rpzav210xlrv10v210xxsubrv20v410xwdrv30vbyoprv40vblezerocodecs302mvc1zlibsgivc1imagezmbvshortenvcr1Enabled encoders:a64multih263ppcm_u32lea64multi5huffyuvpcm_u8aacjpeglspcxac3libx264pgmac3_fixedljpegpgmyuvadpcm_adxmjpegpngadpcm_g722mp2ppmadpcm_g726mpeg1videoproresadpcm_ima_qtmpeg2videoqtrleadpcm_ima_wavmpeg4ra_144adpcm_msmsmpeg4v2rawvideoadpcm_swfmsmpeg4v3roqadpcm_yamahanellymoserroq_dpcmalacpamrv10asspbmrv20asv1pcm_alawsgiasv2pcm_f32besunrastbmppcm_f32lesvq1cljrpcm_f64betargacomfortnoisepcm_f64letiffdnxhdpcm_mulawutvideodpxpcm_s16bev210dvbsubpcm_s16lev410dvdsubpcm_s24bevorbisdvvideopcm_s24daudwmav1eac3pcm_s24lewmav2ffv1pcm_s32bewmv1ffvhuffpcm_s32lewmv2flacpcm_s8xbmflashsvpcm_u16bexsubflvpcm_u16lexwdgifpcm_u24bezlibh261pcm_u24lezmbvh263pcm_u32beEnabled hwaccels:Enabled parsers:aacflacmpegvideoaac_latmgsmpngac3h261pnmadxh263rv30cavsvideoh264rv40cookhevctakdcamjpegvc1diracmlpvorbisdnxhdmpeg4videovp3dvbsubmpegaudiovp8dvdsubEnabled demuxers:aacimage2pcm_u32beac3image2pipepcm_u32leadxingenientpcm_u8aeaipmoviepmpaiffisspvaamriv8qcpanmivfr3dapcjvrawvideoapelatmrl2asflmlm4rmasslxfroqaum4vrplavimatroskarsoavsmjpegrtpbethsoftvidmlprtspbfimmsapbinkmmfsdpbmvmovsegafilmc93mp3shortencafmpcsiffcavsvideompc8smackercdgmpegpssmjpegcdxlmpegtssoldaudmpegtsrawsoxdfampegvideospdifdiracmsnwc_tcpsrtdnxhdmtvstrdsicinmviswfdtsmxftakdvmxgthpdxanctiertexseqeansvtmvea_cdatanuttruehdeac3nuvttaffmoggttyffmetadataomatxdfilmstrippcm_alawvc1flacpcm_f32bevc1tflicpcm_f32levmdflvpcm_f64bevocfourxmpcm_f64levqfg722pcm_mulaww64g723_1pcm_s16bewavgsmpcm_s16lewc3gxfpcm_s24bewsaudh261pcm_s24lewsvqah263pcm_s32bewtvh264pcm_s32lewvhevcpcm_s8xahlspcm_u16bexmvhnmpcm_u16lexwmaidcinpcm_u24beyopiffpcm_u24leyuv4mpegpipeilbcEnabled muxers:a64image2pcm_s16beac3image2pipepcm_s16leadtsipodpcm_s24beadxismvpcm_s24leaiffivfpcm_s32beamrlatmpcm_s32leasfm4vpcm_s8asf_streammatroskapcm_u16beassmatroska_audiopcm_u16leaumd5pcm_u24beavimjpegpcm_u24leavm2mlppcm_u32becavsvideommfpcm_u32lecrcmovpcm_u8daudmp2pspdiracmp3rawvideodnxhdmp4rmdtsmpeg1systemroqdvmpeg1vcdrsoeac3mpeg1videortpf4vmpeg2dvdrtspffmmpeg2svcdsapffmetadatampeg2videosegmentfilmstripmpeg2vobsmjpegflacmpegtssmoothstreamingflvmpjpegsoxframecrcmxfspdifframemd5mxf_d10srtg722nullswfgifnuttg2gxfoggtgph261omatruehdh263pcm_alawvc1th264pcm_f32bevochdspcm_f32lewavhevcpcm_f64bewebmhlspcm_f64lewvilbcpcm_mulawyuv4mpegpipeEnabled protocols:concathttpproxyrtmptcryptomd5rtpffrtmphttpmmshsrtpfilemmsttcpgopherpipeudphlsrtmpunixhttpEnabled filters:aformatdrawboxoverlayamixfadepadanullfieldorderpixdesctestanullsinkformatresampleanullsrcfpsrgbtestsrcasetptsframepackscaleashowinfogradfunselectasplithflipsetdarasynctshqdn3dsetptsatriminterlacesetsarblackframejoinsettbboxblurlutshowinfochannelmaplutrgbsplitchannelsplitlutyuvtestsrccolormovietransposecompandnegatetrimcopynoformatunsharpcropnullvflipcropdetectnullsinkvolumedelogonullsrcyadifEnabled bsfs:aac_adtstoascimx_dump_headernoisechompmjpeg2jpegremove_extradatadump_extradatamjpega_dump_headertext2movsubh264_mp4toannexbmov2textsubEnabled indevs:dv1394ossv4l2fbdevEnabled outdevs:ossLicense: GPL version 2 or laterCreating config.mak and config.h...config.h is unchangedconfig.asm is unchangedlibavutil/avconfig.h is unchangedxy@xy-laptop:~/mywork/av/libav-2014-03-02$ make -j20


相关代码已打包上传到:

http://download.csdn.net/detail/xyyangkun/6990663


0 0