1.首先下载该处的X264:$ B! }6 a7 |/ g4 A4 o
0 S% f& L6 z6 d. _ ~+ x
http://truth-tracer.appspot.com/x264-snapshot-20090216-2245.rar
2 ~. G, {+ ?9 d9 O! f; S0 e7 W- c: y
- c+ Q. j" L; b9 @9 f3 `作者已经对该版本的X264进行了一定的修改。具体修改内容可见:http://bbs.chinavideo.org/viewthread.php?tid=6945&highlight=VS2008
; w) {3 f( U& T2 y/ B1 Q4 I
$ n4 a: a' s/ _( _6 n O3 H2。下载yasm
! k( n% F0 c& V0 s1 e6 Z2 t8 R+ ]/ w2 H9 n) k& x
http://www.tortall.net/projects/yasm/wiki/Download+ _1 c% E, b7 r, j$ `
, {/ Y4 E5 L& J
选择win32.exe.如果是VS2010则下载Win32 VS2010 .zip
4 k$ s H) ?2 Q4 }0 e, N
- ?! f5 e* }/ T. m& J解压后将.exe改名成yasm.exe,主要是方便工程里面yasm的设置9 x. ]$ E. a7 \ S+ ?8 b
e4 R: Z+ g9 }8 U- L
将.exe放在D:\Program Files\Microsoft Visual Studio 9.0\VC\bin,查找自己的相应目录
" P8 @; z" n% M; A" Z% e: K+ \( H3 H, F! U1 S1 {
3。接下来需要下载自定义生成的模板(自己理解的)# ~' i4 k+ r7 O1 C: F* }% G- v7 J0 p
# `6 {+ ]) L, i/ G$ H
VS2008,VS2005下载 yasm.rules http://www.tortall.net/svn/yasm/trunk/yasm/Mkfiles/vc9/yasm.rules
1 [7 G2 m/ ~8 t5 j
% J/ [1 L# t5 w$ L1 t- h7 |, V" qVS2010可直接使用除了EXE外三个文件
' D. [# @* S; w/ Z; b& K1 K3 |6 c$ ]
4。模板放到你的工程目录下,如C。。。。。。\x264-snapshot-20090216-2245\x264-snapshot-20090216-2245\build\win32
( [7 P; ~1 [- W, c4 \4 w/ }0 c! e' Q% T3 m' p+ R3 R
VS2010有个一劳永逸的办法,将那三个文件放到
2 K( A/ a0 Y3 @* O, O8 s z& @4 K7 m4 X
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations下
0 C) E$ v6 v8 N) q+ F |) x. H1 a6 P9 e: m7 s2 ?# r
5。打开工程,编译X264具体的思路是先编译生成libx264d.lib,然后将该lib添加到工程lib库,最后对x264进行编译后生成x264.exe
4 @# s6 Y h7 v, d$ ?* [* L1 @" @. C! X6 F+ O$ }* x
首先编译生成libx264d.lib.右击解决方案,选择自定义生成规则,选择查找现有的,然后在弹出对话框里选择放在该目录下的yasm.rules,如果你放在别的地方就同样的方式添加。- j0 X8 ^( i" ?; G$ G& b& r/ d3 r
" D6 L; f+ V- H1 y, B# E 然后右击解决方案,在属性里可以看到刚才新加的yasm assemble,vs2010貌似没有显示,但不妨碍。具体的东西不用动,接着下一步。
5 x$ s4 Y5 d p5 @: [' z
3 W8 _" s' r6 H4 u+ p5 @ 接下来打开解决方案的x86目录,可以发现ASM都集中在这里.刚才已经修改了yasm名字的,这里可以不用多改,不过也可以按照接下来的步骤进行检修改: # l+ @ O( H" h0 }, _& r0 a% k# w b
0 Y- R" J: K; b2 [( @
0 V8 r# I; p0 ^$ q$ w. i1 V
: Q+ ~% |4 d# N4 o将命令行里的yasm改成你放在bin目录下的exe的名字。 如果使用yasm的话,请注意你的工程所在目录中不能有中文,否则编译的时候yasm会显示???而导致不能进行汇编。
4 ^& e' N8 G7 ?3 L 接下来对所有的asm文件进行属性修改,完了后编译就没有什么问题了。 6。编译完了libx264后,会在工程\bin目录下生成个libx264d.lib(因人而异),可以将它提取出来放到VC的lib库里,具体路径:D:\Program Files\Microsoft Visual Studio 9.0\VC\lib中 打开x264的工程。右击解决方案,选择属性,选择C++-->链接器
! d0 w f' _5 v; v2 g# Q7 Q* n' d7 C$ c' Q
将刚才添加的lib名添加到附加依赖选项。 接下来解决方案,生成,是不是没有问题了。嘿嘿! VS2010也同样可以解决。 |