日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > php開源 > 綜合技術(shù) > [置頂] Windows下編譯FFmpeg詳解

[置頂] Windows下編譯FFmpeg詳解

來源:程序員人生   發(fā)布時間:2015-04-14 08:03:26 閱讀次數(shù):5063次

Windows下編譯FFmpeg⑵.6.1詳解

          在諸多網(wǎng)友幫助下終究弄定了FFmpeg V2.6.1,由于編譯環(huán)境和程序版本的不同,造成了很多沒必要要的時間浪費,特在此將編譯進程和遇到的問題解決方法寫出來,以便方便大家。

          編譯環(huán)境:PC Windows7 64bit、編譯工具:MinGW+MSYS+yasm  編譯軟件:ffmpeg-snapshot-git.tar.bz2

1、下載FFmpeg

               FFMPEG官網(wǎng):http://ffmpeg.org/download.html

               FFmpeg SVN:svn://svn.mplayerhq.hu/ffmpeg/trunk

               FFmpeg GIT:    git://source.ffmpeg.org/ffmpeg.git ffmpeg

             由于FFmpeg的SVN代碼停止了更新,所以從 svn://svn.mplayerhq.hu/ffmpeg/trunk 上Down下來的代碼編譯后與在官網(wǎng)上下載的頭文件不匹配!所以只能從git上下載或下載git緊縮包!

             

               我的下載步驟:打開http://ffmpeg.org/download.html 

 

        下載完ffmpeg-snapshot-git.tar.bz2后解壓到D:workcodeFFmpeg 路徑任意(最好為英文,方便MinGW操作)

2、下載MinGW+msys

             MinGW - Minimalist GNU for Windows-是Windows下摹擬linux運行的庫、頭文件等的集合。

             msys-Minimal SYStem-是Windows下摹擬linux運行的最新系統(tǒng),可以通過類似于linux bash的命令行窗口進行代碼編譯。

             登陸 http://sourceforge.net/projects/mingw/files/ 

 

 

下載完成以后點擊安裝 關(guān)鍵是選擇1個路徑C:MinGW作為安裝路徑,直接下1步就能夠

 

 

 

 

最后點擊continue進行安裝終了確認 并進入下載環(huán)節(jié)

 

              點擊左側(cè)的列表框,選中 Basic Setup,在右邊會出現(xiàn)1些必要的下載項,全選便可。

 

            選擇終了后點擊菜單Installation->Apply Changes 開始下載

 

 

3、配置MinGW

         MinGW下載完成落后入安裝目錄,如果是C:MinGW 則目錄為C:MinGWmsys1.0

         用記事本打開msys.bat文件,在第1行加入:

call "C:Program Files (x86)Microsoft Visual Studio 12.0VCinvcvars32.bat"

         call對應(yīng)的目錄為你的VC安裝程序所在目錄

 

4、下載yasm

     ffmpeg編譯的時候需要yasm.exe   打開http://yasm.tortall.net/Download.html    下載與你版本相匹配的yasm 我用的是win764位 所以下載的是 Win64 .exe (for general use on 64-bit Windows) 如果你的32位系統(tǒng)請下載32位的程序

5、配置yasm

             將下載好的yasm⑴.3.0-win64.exe 或 yasm⑴.3.0-win32.exe 修改成 yasm.exe并拷貝到c:windowssystem32文件夾下--這樣不需要做過量的環(huán)境變量配置

6、編譯FFmpeg

            1、運行軟件

                      運行C:MinGWmsys1.0msys.bat 在彈出窗口中進入ffmpeg的代碼解壓路徑

                                  cd   D:workcodeFFmpeg

          2、配置FFmpeg makefile

                     輸入   ./configure --enable-shared --disable-static --enable-memalign-hack

           3、編譯FFmpeg

                        make

           ffmpeg生成的文件在各自的目錄下,可以通過windows自帶的查找文件功能 搜索*.dll和*.lib 導(dǎo)出這些生成庫

7、編譯時問題

             如果編譯的是老版本的FFmpeg 則會出現(xiàn)以下這些問題

            1、gcc is unable to create an executable file.

                   這是由于gcc編譯器沒有準備好,應(yīng)當是安裝進程中出了毛病,重裝1下。

          2、error: static declaration of 'lrint' follows non-static declaration

../libavutil/libm.h:62: error: static declaration of 'lrint' follows non-static declaration
../libavutil/libm.h:69: error: static declaration of 'lrintf' follows non-static declaration
../libavutil/libm.h:76: error: static declaration of 'round' follows non-static declaration
../libavutil/libm.h:83: error: static declaration of 'roundf' follows non-static declaration

        將ffmpeg代碼路徑下的config.h中的lrint、lrintf、round、roundf等定義為1

         3、implicit declaration of function 'strcasecmp'

         這個問題是由于MinGW的環(huán)境中沒有strcasecmp函數(shù)造成,可以通過自己編寫代碼加入到工程中,也能夠自己編寫代碼保存成文件放到MinGW的include目錄下。

         將以下代碼存儲成strcasecmp.h于mingw include目錄下。
將這個文件include進avstring.h和metadata.h中,問題解決。

 

#ifndef __STRCASECMP_H____ #define __STRCASECMP_H____ static inline char __hack_charget( char c ) { if(c >= 'a' && c <= 'z') c += 'A' - 'a'; return c; } static inline int hack_strcasecmp( char const *a, char const *b ) { char ac, bc; int r; for(;;) { ac = __hack_charget(*a++); bc = __hack_charget(*b++); r = (int)ac - (int)bc; if(r) return r; if(!ac) return 0; } } static inline int hack_strncasecmp( char const *a, char const *b, int n ) { char ac, bc; int r, i; for(i = 0; i < n; ++i) { ac = __hack_charget(*a++); bc = __hack_charget(*b++); r = (int)ac - (int)bc; if(r) return r; if(!ac) return 0; } return 0; } #define strcasecmp hack_strcasecmp #define strncasecmp hack_strncasecmp #endif


        4、-Werror=implicit-提示

         這個表示將隱式聲明函數(shù)毛病,可以通過修改FFmpeg目錄下通過./configure生成的config.mak文件,將Werror相干的地方刪除便可。如:

-Werror=format-security -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=vla  則刪除-Werror=implicit-function-declaration

       

 援用:http://blog.sina.com.cn/s/blog_4ae178ba01010353.html

                    http://blog.chinaunix.net/uid⑵0718335-id⑵980793.html

                    http://www.xuebuyuan.com/1428648.html

 

    

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 日韩午夜视频在线 | 日韩综合图区 | 亚州有码 | 综合在线国产 | 国产精品日韩欧美一区二区 | 亚洲精品三级 | 亚洲视频在线一区 | 免费福利电影 | 精品一区二区不卡 | 综合av在线 | 在线观看成人小视频 | 91精品一区二区三区久久久久久 | 免费视频一区二区 | 精品欧美乱码久久久久久 | 天天摸天天干 | 免费人成在线观看网站 | 一区二区三区四区在线观看视频 | 久久久久久久久久性 | 国产精品免费一区二区三区 | a亚洲天堂 | 亚洲一区二区久久久 | 亚洲色图清纯唯美 | 国产精品三级一区二区 | 欧美午夜一区二区三区 | 国产精品99久久久 | 久久久久久久国产 | 精品国产一区二区在线 | 男女污污视频在线观看 | 色婷婷麻豆 | 久久精品亚洲精品 | 国产精品成人一区二区 | 91精品国产色综合久久不卡粉嫩 | 国产在线一区二区三区 | 黄色毛片18| 国产免费自拍 | 人成在线 | 国产亚洲精品久 | 青青草这里只有精品 | 最好的2019中文字幕视频 | 91精品国产色综合久久 | 欧美日在线|