Commit graph

158 commits

Author SHA1 Message Date
Ari Koivula 535b42bc9b Fix compilation for VS2010. 2014-05-07 15:26:44 +03:00
Marko Viitanen bf2c2a1330 Small changes to fix compiling on VS
- Added threads.h to VS project
- Included Windows.h in threads.h
2014-05-05 11:18:43 +03:00
Ari Koivula 42295d3cb9 Pass preprocessor defines for supported intrinsics in VS2010 explicitly.
- _M_IX86_FP defines whether VS should generate code using SSE or SSE2
  instructions. It isn't correct to use it to check whether optional runtime
  optimizations should be compiled in. It's also not defined at all in 64-bit
  mode.

- So let's just keep it simple and give a list of everything that is supported
  as release optimizations. It's not clear from the documentation if all of
  these are really supported. It just list a bunch of intrinsics from these
  that are.
2014-04-30 17:41:15 +03:00
Ari Koivula bd7e021742 Modify strategyselector to work with VS2010.
- VS doesn't have snprintf.

- VS doesn't support GCC attributes.

- Add defines for __SSE__ and __SSE2__ on VS.
2014-04-29 15:29:06 +03:00
Yusuke Nakamura 03da39e229 config: Use built-in getopt on non-MSVC environments. 2014-04-27 00:40:52 +09:00
Ari Koivula 807fae743e Add new modules to VS project. 2014-04-16 12:12:33 +03:00
Ari Koivula e4b942ad67 Enable /W4 for VS.
- Disabled errors are:
 - Implicit conversion from bigger to a smaller type. I don't want to disable
   it but there are still about 60 of these and adding explicit C casts
   everywhere is just going to cause more problems.
 - Nonstandard extension: Non-constant aggregate initializer.
 - Translation unit is empty.
2014-04-04 13:02:09 +03:00
Ari Koivula 9b9e069560 Put 64 and 32 bit binaries in separate directories.
Also removes debug dll from 32bit release.
2014-02-11 16:51:57 +02:00
Ari Koivula c3f7e903a6 Rename VS project files. 2014-02-11 15:33:41 +02:00
Ari Koivula 6dbae48268 Remove debug module.
- It hasn't been very useful lately and I don't want to maintain it.
2014-02-10 16:50:53 +02:00
Ari Koivula 4a9cbb3de9 Change VS release to use normal DLLs instead of debug.
- Thanks @selur for mentioning it in issue #11.
2014-02-07 15:11:37 +02:00
Ari Koivula db0bcfff98 Update unit tests.
- Vectors that point far outside the frame don't work, although the special
  case of them pointing right beside the frame works. So test for vectors
  pointing farther away.
- Update include directory for greatest.
2014-02-07 14:24:18 +02:00
Marko Viitanen cb611797b3 Included getopt.c/.h to VS2010 project 2014-02-04 17:22:36 +02:00
Ari Koivula 6b4d113feb Replace seatest with greatest as a framework for unit tests.
- Add our own Github fork of greatest as a submodule, in case we want to
  improve it and push changes upstream easily in the future.
- Update existing unit tests to use greatest.
- Update Visual Studio project to remove traces of seatest and include greatest.
2014-01-31 15:57:49 +02:00
Ari Koivula 7d5c3f7d0f Rename sad_tests.cpp to sad_tests.c. 2014-01-31 14:36:50 +02:00
Marko Viitanen 76f24408b6 Included x264asm abstraction layer -library and fixed Makefile
Name mangling is causing problems on different platforms (issues #2 and #3) and some of it was solved modifying the Makefile. Separate 32bit and 64bit assembly functions were also causing problems and since we were going to move to x264asm abstraction layer anyway, we decided to do it now before spending time on the old implementation.
2014-01-30 17:59:50 +02:00
Marko Viitanen 9f70bf74f0 Imported and converted RDOQ from HM 12.0, NOT WORKING YET 2014-01-27 14:34:58 +02:00
Ari Koivula 343cc7f272 Move yasm visual studio files to build. 2014-01-24 15:51:41 +02:00
Ari Koivula 5f3ee9e096 Sao vcxproj files. 2013-11-04 20:35:48 +02:00
Ari Koivula 2b4ca9b3e5 Remove tests as post build event from main project.
It wasn't supposed to be there yet.
2013-10-10 14:31:59 +03:00
Ari Koivula 68aa70a49a Add tests for calculating sad outside frame. 2013-10-09 15:31:27 +03:00
Ari Koivula e5cced6b4a Move _CRT_SECURE_NO_WARNINGS to property sheet. 2013-09-24 21:31:48 +03:00
Ari Koivula ca34dd4b3f Fix .vcxproj files by hand.
- Remove stupid stuff.
- Reorder imports so that default settings are gathered correctly.
  Microsoft.Cpp.props needs to be imported after ConfigurationType and
  UseDebugLibraries have been set because it does different stuff depending
  on their values.
2013-09-24 21:31:05 +03:00
Ari Koivula 2c19aa59b2 Fix build directories.
- Make all archs and confs use solution/bin/$conf. This was changed by
  accident earlier.
- Change intermediate build directories to $arch-$conf form.
- Put libs in build/$arch-$conf-libs.
- Remove unnecessary options from individual confs.
2013-09-24 21:30:37 +03:00
Ari Koivula aa2ee15060 Add a simple test for picture_list.
- Add solution/src to includes for all projects.
- Add solution/../../seatest to includes for all projects.
2013-09-24 21:29:56 +03:00
Ari Koivula 91e3d76aef Fix configuration. 2013-09-24 21:03:48 +03:00
Ari Koivula 0df24a3a5b Rename tests/main.c to tests_main.c. 2013-09-24 16:34:49 +03:00
Ari Koivula 74b8bf8c0a Add example unit tests. 2013-09-24 13:59:19 +03:00
Ari Koivula 2fc6696536 Add Visual Studio project for unit tests. 2013-09-24 13:58:00 +03:00
Ari Koivula adf98f7876 Change HEVC_encoder into a static library and add HEVC_interface for the exe.
- Move more settings to property sheets.
2013-09-24 13:43:15 +03:00
Ari Koivula d381ec234d Move linker options into a property sheet. 2013-09-24 10:20:03 +03:00
Ari Koivula 933c4a94fe Move release compiler properties into a separate property sheet. 2013-09-23 17:59:00 +03:00
Ari Koivula ddd37b6551 Move compiler properties into separate property sheet.
This is done in preparation for adding new projects to the solution.
2013-09-23 17:45:34 +03:00
Ari Koivula ceac5bb580 Remove users.props from configurations. 2013-09-23 17:33:28 +03:00
Ari Koivula e770f77564 Remove unnecessary preprocessor defines from project settings.
- _WIN32 and _WIN64 are defined by windows headers.
- _DEBUG is defined when debug libs are used.
- _CONSOLE does nothing.
2013-09-23 17:32:07 +03:00
Ari Koivula 16edf834f6 Add debug module and add CU visualization to the debug module. 2013-09-18 12:29:22 +03:00
Marko Viitanen f064c66e65 Added Yasm build configuration files 2013-09-03 14:53:12 +03:00
Marko Viitanen 06fd1d6fa9 Fix for sign bit hiding, not working yet 2013-06-12 15:41:57 +03:00
Marko Viitanen 4c1e015c5f Work on Deblocking filter 2013-05-22 17:27:15 +03:00
Marko Viitanen 2a70231c06 Fixed Chroma 4x4 2013-05-20 17:26:57 +03:00
Marko Viitanen 9011478dba New contexts and other inter code 2013-04-24 16:49:47 +03:00
Marko Viitanen ae506ceaf5 Moved all the intra-search functionalities to search-tree, does not work completely. 2013-04-17 17:08:52 +03:00
Marko Viitanen a737e8660c New search.c/.h files and changed department name on all files 2013-04-16 11:23:03 +03:00
Marko Viitanen 01c7f267d7 Added CPUID fetch assembly functions (x86 and x64) 2013-04-10 16:55:31 +03:00
Marko Viitanen 9888eaf9a4 Added and fixed x64 build 2013-04-05 14:55:58 +03:00
Marko Viitanen d0be802ced Added filter.c/.h and deblocking functions 2013-04-03 11:05:07 +03:00
Marko Viitanen 78894b05d1 Fixed dequantization and made preparations for smaller blocks. This version produces bit-perfect output. 2013-03-21 17:12:55 +02:00
Marko Viitanen 3a53654cf4 Added intra prediction, image reconstruction and iTr and iQ. Fixed a bug with negative SE values 2013-03-07 17:42:00 +02:00
Marko Viitanen 14fed8bac7 Separated context related functions and arrays to context.h/.c 2012-08-15 13:22:31 +03:00
Marko Viitanen 620541a7fc More context models and work on the intra coding 2012-06-12 17:35:45 +03:00
Marko Viitanen 9bfd542b73 Started digging into the intra prediction stuff 2012-06-11 18:43:29 +03:00
Marko Viitanen aaa6f59cef Endianness fix (not depending on the host endianness) 2012-06-06 11:59:02 +03:00
Marko Viitanen a56a1c9aa6 NAL writing and dummy SPS/PPS generation 2012-06-05 15:38:54 +03:00
Marko Viitanen ef5d210b18 More bitstream functions and better initialization
+ picture.c/.h
2012-06-05 14:01:47 +03:00
Marko Viitanen 5dcbe3e8df Data structure initialization functions 2012-06-04 11:53:48 +03:00
Marko Viitanen bbe03211e1 Added bitstream functions 2012-05-30 15:37:42 +03:00
Marko Viitanen ef9784c107 Added VS2010 project files and fixed compilation 2012-05-30 15:26:39 +03:00
Marko Viitanen adce16c03f Initial commit with working config functions 2012-05-30 15:10:23 +03:00