Ari Lemmetti
|
a348a0ec23
|
Fix transform depth in early skip
|
2019-07-09 20:05:48 +03:00 |
|
Pauli Oikkonen
|
8d48bee180
|
Tidy fast coeff cost code
|
2019-07-09 18:01:54 +03:00 |
|
Pauli Oikkonen
|
201a43b08e
|
Clean up the RD-estimation code
|
2019-07-09 18:01:54 +03:00 |
|
Pauli Oikkonen
|
b111df5073
|
Create preliminary version of improved cost estimator
|
2019-07-09 18:01:54 +03:00 |
|
Ari Lemmetti
|
be08a87d94
|
Add missing parameter max-merge to the help message
|
2019-07-09 16:28:46 +03:00 |
|
Ari Lemmetti
|
d0bb9b4a6d
|
Add parameter max-merge to presets
|
2019-07-09 16:26:03 +03:00 |
|
Ari Lemmetti
|
4097331fd6
|
Early skip
|
2019-07-09 15:59:31 +03:00 |
|
Joose Sainio
|
977e885ea2
|
Fix issue with gop=0 introduced in 1c36f68d0c
|
2019-07-05 12:57:27 +03:00 |
|
Mikko Pitkänen
|
a7f09c8114
|
Merge branch 'threadwrapper'
|
2019-06-24 16:54:59 +03:00 |
|
Mikko Pitkänen
|
3dd606ce2e
|
Add new threadwrapper
|
2019-06-18 18:45:45 +03:00 |
|
Joose Sainio
|
c94077d15e
|
remove hardcoded value
|
2019-06-12 14:37:41 +03:00 |
|
Joose Sainio
|
ac68c8444d
|
remove negation that wasn't supposed to be there
|
2019-06-12 14:35:24 +03:00 |
|
Joose Sainio
|
5851dcc3be
|
missing negation
|
2019-06-12 14:08:18 +03:00 |
|
Joose Sainio
|
1c36f68d0c
|
Fix owf>=9 gop=8 and add test to catch such problem in future
|
2019-06-12 14:04:41 +03:00 |
|
Ari Lemmetti
|
933ff6ed55
|
Merge branch 'set-qp-in-cu-fix'
|
2019-06-07 09:01:03 +03:00 |
|
Ari Lemmetti
|
c6da839002
|
Set lcu sqrt lambda according to lcu lambda instead of frame lambda when ROI is used
|
2019-05-29 18:32:10 +03:00 |
|
Ari Lemmetti
|
9339845e8b
|
Set QP completely at CU level as the name '--set-qp-in-cu' implies
-Move slice delta QP to CU level when using --set-qp-in-cu
-Separate functionality from roi
|
2019-05-24 20:38:39 +03:00 |
|
Pauli Oikkonen
|
081d16fc33
|
Fix intrinsics that may be missing on some systems
Create a header to collect all the workarounds for missing intrinsics
in one place
|
2019-05-23 19:59:40 +03:00 |
|
Pauli Oikkonen
|
87a9208db8
|
Eliminate cvtsi64_si128 intrinsic
Apparently it'll cause Win32 builds to break because it emits the movq
instruction or something..
|
2019-04-17 16:30:40 +03:00 |
|
Pauli Oikkonen
|
7175d20bb2
|
Still include stdint.h for non-vector builds
|
2019-04-15 19:36:01 +03:00 |
|
Pauli Oikkonen
|
1315c7e2b0
|
Do not compile any vector code for non-SSE4/AVX2 builds
|
2019-04-15 19:10:48 +03:00 |
|
Pauli Oikkonen
|
f5f70e7bc5
|
Merge branch 'sad-optimization'
|
2019-04-15 19:02:01 +03:00 |
|
Jan Beich
|
85f46e17a9
|
Detect AltiVec via elf_aux_info() on FreeBSD 12+
|
2019-04-01 13:08:04 +00:00 |
|
Jan Beich
|
82486255da
|
Simplify AltiVec detection on Linux
|
2019-04-01 13:08:04 +00:00 |
|
Pauli Oikkonen
|
6d43759604
|
Create a border-respecting 32-wide AVX hor_sad
|
2019-03-07 18:01:22 +02:00 |
|
Pauli Oikkonen
|
f218cecb38
|
Remove offending hor_sad_avx2_w32 function
Consider possibly creating a non-offending AVX2 version instead, the
way hor_sad_sse41_w32 works. Or maybe there's more essential work to
do.
|
2019-03-05 22:51:41 +02:00 |
|
Pauli Oikkonen
|
df2e6c54fd
|
4-unroll hor_sad_sse41_arbitrary
This may not increase perf though because it's so rarely used
function, so keeping icache footprint may be more essential...
|
2019-03-05 22:45:23 +02:00 |
|
Pauli Oikkonen
|
448eacba7b
|
Avoid overreading block borders in hor_sad_sse41_arbitrary
|
2019-03-05 22:34:50 +02:00 |
|
Eemeli Kallio
|
c159e275b7
|
Merge branch 'max_merge'
|
2019-03-05 14:39:03 +02:00 |
|
Pauli Oikkonen
|
41f51c08c4
|
Avoid overrunning buffer in hor_sad_sse41_w32
|
2019-03-01 15:37:38 +02:00 |
|
Pauli Oikkonen
|
bcd9879359
|
Include quant coeff range check in non-scaling list execution path too
|
2019-02-27 17:26:44 +02:00 |
|
Pauli Oikkonen
|
24e6363f64
|
Remove the kvz_quant_avx2 wrapper function
|
2019-02-27 16:32:58 +02:00 |
|
Pauli Oikkonen
|
748820f3c5
|
Eliminate unnecessary loading of coeffs if scaling lists are off
|
2019-02-27 16:26:35 +02:00 |
|
Pauli Oikkonen
|
5994350f40
|
Allow quant_flat_avx2 to be used with scaling lists on
|
2019-02-27 16:25:59 +02:00 |
|
Eemeli Kallio
|
7f4e0acf41
|
Added check if max-merge is out of bounds
|
2019-02-19 13:53:42 +02:00 |
|
Pauli Oikkonen
|
9b0e079262
|
Use SSE instructions for 64-bit SADs instead of MMX
VC++ seems to choke on MMX instructions
|
2019-02-18 20:13:33 +02:00 |
|
Pauli Oikkonen
|
d8b8923028
|
Add LGPL notices to reg_sad headers
|
2019-02-18 17:52:47 +02:00 |
|
Eemeli Kallio
|
2a40560888
|
some variables to const
|
2019-02-12 11:24:10 +02:00 |
|
Eemeli Kallio
|
8f8e7bb53c
|
Added possibility to reduce number of maximum number of merge candidates.
|
2019-02-12 09:21:03 +02:00 |
|
Pauli Oikkonen
|
770db825b9
|
Create hor_sad_w8 and w4 epol mask the way w16 works
|
2019-02-06 19:34:26 +02:00 |
|
Pauli Oikkonen
|
aa19bcac8a
|
Avoid branching in creating shuffle mask in hor_sad_w16
|
2019-02-06 18:58:46 +02:00 |
|
Pauli Oikkonen
|
2d05ca8520
|
Remove width from constant-width hor_sad func params
They should kinda know it already
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
57db234d95
|
Move 32-wide SSE4.1 hor_sad to picture-sse41.c
It's not used by picture-avx2.c that also includes the header, so
it should not be in the header
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
dd7d989a39
|
Implement 32-wide hor_sad on AVX2
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
ff70c8a5ec
|
Utilize horizontal SAD functions for SSE4.1 as well
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
f5ff4db01f
|
4-wide hor_sad border agnostic
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
35e7f9a700
|
Fix hor_sad w8 to work with both borders
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
836783dd6e
|
Use hor_sad_w32 for both left and right borders
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
69687c8d24
|
Modify hor_sad_sse41_w16 to work over left and right borders
|
2019-02-04 20:41:40 +02:00 |
|
Pauli Oikkonen
|
51c2abe99a
|
Modify image_interpolated_sad to use kvz_hor_sad
|
2019-02-04 20:41:40 +02:00 |
|