由於現在的x264不支持VC工程,我們用以前的VC工程版本,還要用到yasm.
下載工程文件並解壓,路徑和文件夾名最好不要有中文(yasm編譯匯編時可能會出錯)
下載x264: http://download.csdn.net/detail/agent_x/9491982
下載yasm: http://www.tortall.net/projects/yasm/wiki/Download
解壓文件
解壓後將文件名都改名成yasm,主要是方便工程裡面yasm的設置。
將.exe放在$VSPath\VC\bin下,查找自己的相應目錄($VSpath為VS的安裝路徑)
將除yasm.exe以外的三個文件放到x264的工程目錄\x264\build\win32下
VS2013有個一勞永逸的辦法,將那三個文件放到C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\v120\BuildCustomizations下
編譯libx264
打開工程,首先編譯生成libx264d.lib.右擊解決方案->生成依賴項->生成自定義->在彈出的對話框裡勾選yasm.exe->確定。
如果對話框裡沒有,可以選擇查找現有的,然後在彈出對話框裡選擇放在該目錄下的yasm.rules,如果你放在別的地方就同樣的方式添加。
編譯x264
編譯完了libx264後,會在工程\bin目錄下生成個libx264d.lib,可以將它提取出來放到VC的lib庫裡,具體路徑:$VSPath\VC\lib(因人而異)中打開x264的工程。
右擊解決方案,選擇屬性->鏈接器->輸入->附加依賴選項,將剛才添加的lib名添加到附加依賴選項(增加libx264.lib)。接下來右擊解決方案,生成,是不是沒有問題了。
運行看看。發現會報錯,彈出窗口顯示在.\obj/x264_Debug 目錄下找不到x264.exe文件。
這是因為生成的.exe程序的默認路徑是在\bin目錄下,修改一下輸出路徑就可以了。屬性->鏈接器->輸出文件 路徑改為.\obj/x264_Debug\x264.exe
PS:修改x264源碼,調試時把libx264的生成路徑修改一下,不然程序在跑的時候使用的仍是以前生成的lib文件。右擊libx264解決方案->屬性->庫管理器->輸出文件,將路徑修改成VC/lib路徑下,這樣每次用的都是最新生成的lib文件。