Commit graph

208 commits

Author SHA1 Message Date
Arttu Ylä-Outinen 1cd149fb97 Check merge/mv candidate types earlier.
Moves checks for motion vector prediction and merge candidate block
types (inter/intra) from functions kvz_inter_get_mv_cand and
kvz_inter_get_merge_cand to kvz_inter_get_spatial_merge_candidates.
2015-12-15 11:21:39 +02:00
Arttu Ylä-Outinen 969c91d7c4 Add a test for kvz_inter_get_spatial_merge_candidates. 2015-12-15 11:21:39 +02:00
Ari Koivula 0722f461c5 Fix compiling tests on mac
The mac version of KVZ_GET_TIME macro has many statements, which
prevented it being used inside a for loop statement. Added brackets
to all versions to prevent this issue arising in the future.

Fixes #115.
2015-11-13 22:57:29 +02:00
Ari Koivula 93637f4683 Move macros in threads.h to KVZ_ namespace 2015-11-13 22:46:32 +02:00
Ari Lemmetti 6214e2b328 Fix small typos 2015-10-05 19:41:23 +03:00
Ari Lemmetti 9051fbf593 Fix function names in speed tests 2015-09-18 17:15:59 +03:00
Ari Koivula 09baa6bd5e Fix intra_sad and satd_tests
The tests were not being run, because the names have changed.
2015-09-18 15:26:37 +03:00
Arttu Ylä-Outinen 3a10e9e3e0 Prefix all non-static symbols with "kvz_". 2015-08-26 13:02:28 +03:00
Ari Lemmetti 5d96dbc6c0 Make strategy selection use bit depth given via parameter instead of excluding registration with defines 2015-08-12 13:33:38 +03:00
Ari Lemmetti f6ffa1af8b Disable tests with bit depth other than 8 2015-08-12 11:36:32 +03:00
Ari Lemmetti 4122f36089 Prevent the registration of strategies that are incompatible when KVZ_BIT_DEPTH != 8
Remove unnecessary or misleading mentions of "8bit"
2015-08-12 11:29:53 +03:00
Arttu Ylä-Outinen e3fbd6d2be Fix test compilation warnings.
- Turn global variables static.
- Increase size of bufs array in intra_sad_tests.
2015-07-02 16:58:30 +03:00
Arttu Ylä-Outinen f7f17a060c Rename pixel_t to kvz_pixel. 2015-07-02 16:58:28 +03:00
Arttu Ylä-Outinen 17d720363a Rename struct image_t to kvz_picture. 2015-07-02 16:55:48 +03:00
Arttu Ylä-Outinen fab07d80da Rename macro BIT_DEPTH to KVZ_BIT_DEPTH. 2015-07-02 16:55:47 +03:00
Arttu Ylä-Outinen fe3b629905 Move poc from image_t to image_list_t. 2015-07-02 16:24:25 +03:00
Ari Koivula ded6fd9ee8 Renamed typedef pixel to pixel_t. 2015-03-04 16:35:53 +02:00
Ari Koivula e95b138e62 Rename struct strategy_list to strategy_list_t. 2015-03-04 16:23:04 +02:00
Ari Koivula 95afc5af51 Rename struct strategy to strategy_t. 2015-03-04 16:17:45 +02:00
Ari Koivula fe55961f84 Rename struct image to image_t. 2015-03-04 14:01:17 +02:00
Ari Koivula d7383ccb25 Change license to LGPL.
- Everyone who has contributed code to the project has been asked to license
  their contributions under LPGL and they have agreed.

- COPYING file changed to say LGPLv2.1 instead of GPLv2.

- GPL changed to LGPL in the header of every single file that a header and
  header added to the few that were missing one.

- Also.. Happy new year!
2015-02-25 15:19:05 +02:00
Ari Koivula 5fa6438b25 Clean up calls to memset.
- Replaces all calls to memset with new FILL and FILL_ARRAY macros. The use
  of memset was inconsistent and we never use it for anything complicated.
2015-02-19 16:25:28 +02:00
Ari Lemmetti dfd40467c4 Removed duplicate consts. 2014-10-29 15:42:16 +02:00
Ari Lemmetti a64aae7c53 Makefile now compiles tests. Fixed test files. Removed unused stuff. 2014-10-29 15:32:47 +02:00
Ari Koivula f6272f06fc Unify signature for transform functions.
- Some used block, coeff and some src, dst. Now all signatures are const input
  and non-const output.
2014-10-03 11:21:43 +03:00
Ari Koivula 4e6691cff1 Fix problems with unit tests.
- Cast function pointers to correct function signatures.
- Increase number of buffers on SATD tests so the initialization doesn't
  overflow them and initialize the unused buffers to null.
2014-10-03 11:14:57 +03:00
Ari Lemmetti 823ee69c64 Added tests for DCT/IDCT 2014-10-02 13:24:29 +03:00
Ari Koivula d93f0ac71f Add benchmark test for dct functions. 2014-07-31 13:25:28 +03:00
Ari Koivula 150a47435d Add missing files. 2014-07-30 15:26:20 +03:00
Ari Koivula b5944d5d3c Move test strategy initialization to its own module. 2014-07-29 08:31:28 +03:00
Ari Koivula 538c9ec85b Add a benchmark for strategies.
- usage: kvazaar_tests -v -s speed

Conflicts:
	build/kvazaar_tests/kvazaar_tests.vcxproj
	build/kvazaar_tests/kvazaar_tests.vcxproj.filters
	tests/tests_main.c
2014-07-28 12:34:12 +03:00
Ari Koivula fa39a44fac Add gradient test to intra sad. 2014-07-28 12:31:49 +03:00
Ari Lemmetti 7309706e94 Removed unnecessary stuff from intra_sad_tests.c 2014-07-23 11:51:17 +03:00
Ari Lemmetti a64df6f0d0 Merge branch 'asm'
Conflicts:
	build/kvazaar_lib/kvazaar_lib.vcxproj.filters
	src/Makefile
	src/strategies/strategies-picture.c
2014-07-21 16:41:09 +03:00
Ari Koivula a8f7103797 Add AVX2 implementations for sad_8bit_ 8x8, 16x16 and 32x32. 2014-07-18 18:27:30 +03:00
Ari Lemmetti 1e94262f85 Made AVX asm compatible with the changed system
- x86inc.asm is now located in extras
- Removed unused cpu.asm/h
2014-07-14 18:51:17 +03:00
Ari Lemmetti 2169f9ab8c Added AVX asm comments and fixes
-Added vzeroupper to satd macro to prevent AVX-SSE transition penalties int picture_x86.asm
-Fixed the order of registers in zero extend macro in picture_x86.asm
-Fixed SATD checkers test pattern in satd_tests.c
2014-07-14 14:43:36 +03:00
Ari Lemmetti 048127c7e3 AVX assembly optimizations improved 2014-07-02 16:57:06 +03:00
Ari Koivula ab3845c9c7 Add some intra sad tests. 2014-06-16 18:03:56 +03:00
Ari Koivula 4469b1680f Fix inter sad tests.
- Because intra sad functions were added to the same module, they were being
  called as if they were reg_sad, which of course failed.

Conflicts:
	tests/sad_tests.c
2014-06-16 18:03:39 +03:00
Ari Koivula cebdd7d5f9 Update tests. 2014-06-16 16:07:11 +03:00
Ari Koivula 5fad064754 Add unit tests for intrinsic reg_sad functions. 2014-06-13 15:30:23 +03:00
Ari Koivula 9a3569b5c6 Update unit tests to work with current build.
- Updating picture_list wasn't really worth it so I removed it.
2014-06-13 15:30:23 +03: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
Ari Koivula 478740cf21 Add missing new lines to ends of files. 2014-02-03 16:54:03 +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
Ari Koivula 69d1f6d1e2 Clean up the code.
- Rename get_block_sad to calc_sad and handle special cases in general_sad.
- Remove old search functions because I don't want to update or test them.
2013-10-11 15:19:21 +03:00
Ari Koivula b155d825be Add tests for movement vectors that are completely out of frame. 2013-10-11 14:11:49 +03:00
Ari Koivula 22262dbc98 Fix a bug in a test. 2013-10-11 12:38:14 +03:00
Ari Koivula d3561146d8 Change sad-tests to use chars instead of numbers to help with debugging.
1 + 48 is ascii '1' and so on.
2013-10-10 21:50:41 +03:00
Ari Koivula 356a0e8a14 Change SAD-test offset.
Using 3 instead of 4 avoids having symmetric negation of the offset, like
-4 and +4. It also makes the expected result easier to calculate by hand.
2013-10-10 15:16:14 +03:00
Ari Koivula 24d9fd7c05 Fix wrong index in sad tests. 2013-10-10 14:04:19 +03:00
Ari Koivula 68aa70a49a Add tests for calculating sad outside frame. 2013-10-09 15:31:27 +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 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