Commit graph

1835 commits

Author SHA1 Message Date
Ari Lemmetti d82582c37c Changes to extend border function.
Now outputs a pointer to a block with guaranteed padding for filtering.
Only generate extra pixels if samples are needed out of bounds.
Use memcpy otherwise.
2015-08-17 15:01:46 +03:00
Ari Lemmetti fc038cb8bf Add --source-scan-type parameter
Options progressive (default)
        tff for top field first
        bff for bottom field first
2015-08-13 12:53:14 +03:00
Ari Lemmetti 4dcc0d876d Fix rate control when --owf=auto (default)
Value in cfg stays -1 if auto selection is used.
Use value in encoder instead.
2015-08-12 18:20:57 +03:00
Ari Lemmetti bb9b5d0974 Merge branch '10bit_rebase' 2015-08-12 13:34:47 +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
Ari Lemmetti 33b6481660 Remove unused variables. 2015-08-11 15:53:40 +03:00
Ari Lemmetti 348d7780fc Remove third shift and offset from 14-bit sampling functions (change missing from rebase) 2015-08-11 15:06:16 +03:00
Marko Viitanen 8409317bd9 Fixed rebasing errors for 10bit branch 2015-08-11 14:56:45 +03:00
Marko Viitanen 58f12bd530 Changed frame 8bit to 10bit conversion to be done without memory allocation 2015-08-11 08:18:14 +03:00
Marko Viitanen 6453a511d7 Scale SAD/SATD costs to match bit depth
Conflicts:
	src/image.c
2015-08-11 08:18:14 +03:00
Marko Viitanen 0304b6c412 Fixed luma interpolation filter when 10bit coding and some other minor fixes 2015-08-11 08:17:48 +03:00
Marko Viitanen 450b5e64ca Fixed overflow on generic ipol filters when 10bit encoding
Conflicts:
	src/strategies/generic/ipol-generic.c
2015-08-11 08:17:48 +03:00
Marko Viitanen 191d3e4d87 Fixed RDOQ on 10bit encoding 2015-08-11 08:14:35 +03:00
Marko Viitanen 414ebe6101 Fixed checksum on bitdepth > 8 cases
Conflicts:
	src/nal.c
	src/nal.h
	src/strategies/generic/nal-generic.c
	src/strategies/strategies-nal.c
	src/strategies/strategies-nal.h
2015-08-11 08:14:35 +03:00
Marko Viitanen 57ab46f110 Small fixes all around to enable 10bit encoding
Conflicts:
	src/encmain.c
	src/encoder.c
	src/encoderstate.c
	src/global.h
2015-08-11 07:59:20 +03:00
Ari Lemmetti 7cd4f7a5c9 Enable fractional motion vectors with bipred 2015-08-10 18:49:12 +03:00
Ari Lemmetti 5887c96991 Add and use 14bit reconstruction for fractional motion vectors with bipred 2015-08-10 18:45:29 +03:00
Ari Lemmetti a87dafb27a Add hi_prec_buf_t for higher precision intermediate values for interpolation filter. 2015-08-10 18:35:06 +03:00
Ari Lemmetti 3e31ff2476 Use the function to sample half-pixels. 2015-08-10 18:30:41 +03:00
Ari Lemmetti 0a096c7040 Move qpel and octpel reconstruction in separate functions. 2015-08-10 18:25:52 +03:00
Ari Lemmetti fc00b4795c Preparations for more accurate reconstruction with bipred 2015-08-10 18:08:13 +03:00
Ari Lemmetti 8b4a6c92da Add 14bit precision sample functions. 2015-08-10 18:02:06 +03:00
Ari Lemmetti b30f17d4b8 Add fractional pixel sampling for chroma 2015-08-10 17:55:37 +03:00
Ari Lemmetti 650dd7d840 Use pixels_blit to copy neccessary pixels. 2015-08-10 17:52:00 +03:00
Ari Lemmetti 01f40ec104 Add fractional pixel sampling for luma 2015-08-10 17:51:48 +03:00
Ari Koivula 0c3c93d456 Optimize intra SAD intrinsics.
- Added 64x64 version for completeness.
- With the exception of 16x16, these were all slightly slower than the ASM
  versions, as measured by "kvazaar_test -s speed -t intra_sad", but now they
  are on par or slightly faster.
- None of these actually use any AVX2 intrinsics, and probably never will,
  unless someone adds an interface for doing more than one block at a time,
  in which case the non-destructive versions might come in handy.
2015-08-06 19:35:00 +03:00
Ari Lemmetti 20b833bc8e Fix mingw errors 2015-07-31 18:44:36 +03:00
Ari Lemmetti 12c391eb08 Add auto-detection for input resolution.
Use --input-res=auto as default.
2015-07-31 17:35:16 +03:00
Ari Koivula 1cd0d9fea3 Merge branch 'make-tweaks' 2015-07-31 16:00:11 +03:00
Ari Koivula 0740a73fbb Clean up Makefile.
- Move stuff around.
- LDFLAGS -shared and -dynamiclib imply -fpic.
2015-07-31 15:57:05 +03:00
Ari Koivula beec2705b1 Add cli, lib-shared and lib-static to Makefile. 2015-07-31 15:57:05 +03:00
Ari Koivula 24b3306325 Fix incorrect pattern rules in Makefile.
- Having more than one rule in a pattern rule means that both of those files
  are created at the same time with the rule. This only worked for debug,
  because debug build was never done in the same invocation as release build.
2015-07-31 14:36:45 +03:00
Ari Koivula 1c27f67963 Remove -flto.
- Always use the compiler to invoke the linker. Clang will give additional
  parameters to the linker when compiled with -flto.
- Giving a different optimization level to linker did not make any difference
  in gcc-5.1.1.
2015-07-31 14:36:26 +03:00
Ari Koivula 54b1be341e Don't compile executable with PIC.
- It's required for .so and .dylib, but not for .dll or the executable.
- It might be better to use libtool for this, but I'm not ready to go that
  far yet.
2015-07-29 17:12:09 +03:00
Ari Koivula 81f5085136 Build with jobs=2 on Travis. 2015-07-29 13:54:59 +03:00
Ari Koivula f8154f8382 Merge branch 'make-dylib' 2015-07-29 11:28:43 +03:00
Ari Koivula 60437fd0c3 Add -lrt back the exe link command. 2015-07-29 11:28:11 +03:00
Luca Barbato 5c7a808bbd build: Generate a pkg-conf file 2015-07-29 02:27:12 +02:00
Ari Koivula 04e1a21ded Merge branch 'make-dylib'
Closes #94.
2015-07-28 11:42:46 +03:00
Ari Koivula 2211b90a24 Move comments for defines to a different line.
- Having comment as part of the define confuses doxygen. They get added
  to every function that uses the macro.
2015-07-21 17:10:08 +03:00
Ari Koivula 52b110d318 Change doxygen settings.
- Not having static functions in the doxygen documentation kind of makes
  it useless. Especially the call graphs make no sense without them.
2015-07-21 17:05:54 +03:00
Ari Koivula 022d28ab11 Fix small hexbs pattern.
- Who could mess this up? Oh.. right.
2015-07-21 16:12:44 +03:00
Ari Koivula 3ed8d43661 Merge branch 'refac-search' 2015-07-21 16:08:42 +03:00
Ari Koivula 22e56f86c7 Move inter search patterns inside the search functions. 2015-07-21 16:06:31 +03:00
Ari Koivula b73b275e08 Remove unused includes from search. 2015-07-21 15:06:06 +03:00
Ari Koivula ae56118010 Move functions from search to search_intra. 2015-07-21 14:59:19 +03:00
Ari Koivula bf7542c35d Move functions from search to search_inter. 2015-07-21 12:16:05 +03:00
Ari Koivula 3c9b830d8f Add modules search_intra and search_inter.
- For breaking up search module.
2015-07-21 12:04:16 +03:00