This project is read-only.

Prerequisits

In order to be able to build the project yourself, you need the Intel Compiler (which comes with Visual Studio integration) and an installation of Yasm.
The project was successfully built with ICL 12.1 and YASM 1.2.0.

Changes to the x264-code

The code in fact required only very minimal changes in order to make it work. Most changes are related to stack-alignment - GCC allows to create binaries where the alignment of the stack is guaranteed to be a multiple of 16 bytes (and the assembly code relies on this). I am not sure whether the ICL should be able to do the same - in any case I did not get it to work properly. So I ended up coding small stubs for the functions relying on a 16-byte-stack-alignment, which copy the parameters on the stack to an appropriate locations and then call into the wrapped function. This can be found in the file alignstubs-a.asm.

FAQ

Why not use the original build environment?

Because a build with gcc does not allow to debug the binary with VisualStudio. The debug information produced by gcc is incompatible with VisualStudio - afaik.

Can x264 be compiled with the Microsoft C++ compiler?

I did not invest too time looking into this so far. There are some files with AT&T-inline-assembly and some C99-code - both of which is not supported by the MS-compiler. The necessary changes seem to be not too hard.

What are the plans for the future?

I will try to keep this project up-to-date with updates of x264. I will mostly use it for private projects and investigations. Short-term goal probably is to also be able to build x264 for 10-bit image format.

Last edited Jun 2, 2012 at 2:14 PM by ptahmose, version 2

Comments

No comments yet.