Joose Sainio
042b5078d8
[jccr] WIP initial implementation
...
Add somekind of search for joint chroma residual coding.
Bitstream is currently correct but prediction is incorrect because the jccr
is actually not used in the search.
Hard coded to be enabled
2021-09-06 11:28:08 +03:00
Marko Viitanen
839b9527af
Fix nal unit debug printing when VERBOSE is used
2021-09-01 14:28:07 +03:00
Marko Viitanen
d4d0af4fa4
Merge branch 'alf_optimization'
2021-08-31 10:39:12 +03:00
Marko Viitanen
26f18865f7
[alf] Change the processing in alf_get_blk_stats_avx2() to allow utilizing the whole 256bit register
2021-08-27 13:40:28 +03:00
Marko Viitanen
fdf125f406
[alf] Fix incorrect conversion in alf_get_blk_stats_avx2
2021-08-27 10:25:20 +03:00
Marko Viitanen
6714973264
[alf] Change _mm_store_si128 to _mm_storeu_si128 in alf_get_blk_stats_avx2()
2021-08-26 18:05:06 +03:00
Marko Viitanen
5df8add046
[alf] Change order of alf_covariance.y array for better AVX2 optimization in alf_get_blk_stats_avx2()
2021-08-26 15:37:01 +03:00
Marko Viitanen
be9527cf1d
[alf] Change the order of alf_covariance.ee values to get better optimized solution for alf_get_blk_stats_avx2()
2021-08-26 11:07:13 +03:00
Marko Viitanen
f4de5cfd0f
[alf] Cleanup alf_calc_covariance_avx2() and use integers in alf_get_blk_stats_avx2()
2021-08-26 10:20:57 +03:00
Marko Viitanen
915bf3ca24
[alf] Fix AVX2 priority
2021-08-25 20:29:58 +03:00
Marko Viitanen
8ef3e6a126
[alf] Add strategy for alf_get_blk_stats() and an initial AVX2 version
2021-08-25 20:22:24 +03:00
Marko Viitanen
f61b9138cd
[alf] Import SSE4.1 optimized 5x5 and 7x7 filters from VTM13
...
* Modified to work with 8-bit pixels
2021-08-25 11:50:37 +03:00
Marko Viitanen
dc6a29b0d8
[alf] Initial generic strategies for 5x5 and 7x7 filtering
2021-08-25 10:50:00 +03:00
Marko Viitanen
c3c96d69c2
[alf] Add modified alf_derive_classification_blk_sse41() from VTM 13.0
...
* Modified to work with bitdepth 8
2021-08-20 11:45:02 +03:00
Marko Viitanen
b158d05bca
[alf] rename strategy function to include prefix
2021-08-19 17:19:17 +03:00
Marko Viitanen
3efaeede76
[alf] Define the strategy for alf_derive_classification_blk()
2021-08-19 17:04:35 +03:00
Marko Viitanen
a5c27add5e
Merge branch 'rdoq_fixing'
2021-08-17 11:24:22 +03:00
Marko Viitanen
dee8a167e4
Clean up entropy tables and some unused code / comments
2021-08-17 10:31:14 +03:00
Marko Viitanen
9e9a8058c5
[alf] Allocate alf covariance and classifier memory only when needed
2021-08-15 10:44:05 +03:00
Marko Viitanen
2007132937
[alf] Make the alf structs a bit more memory efficient
2021-08-15 10:44:04 +03:00
Marko Viitanen
d742f57779
Remove angular_pred_avx2 so we don't need extra parameter
2021-08-15 10:43:48 +03:00
Marko Viitanen
ef287ee00c
[alf] Add math.h header to alf.c for sqrt()
2021-08-15 10:41:55 +03:00
Marko Viitanen
b5bc981d2a
Add entropy bits back to intra luma mode cost
...
* Makes things better after the entropies were fixed
2021-08-15 08:10:45 +03:00
Marko Viitanen
1e925ec980
[rdoq] fix kvz_ts_rdoq error scale
2021-08-14 22:52:32 +03:00
Marko Viitanen
8fcf5cf55c
[rdoq] Fix a lot of things
...
* Fix entropy table
* fix float entropy
* use dest_coeff instead of coef in ctx_idx_abs calculation
* Calculate new ctx_sig in correct place
2021-08-14 22:12:08 +03:00
Marko Viitanen
b412a96820
[cleanup] Change mentions of Kvazaar to uvg266 in README.md and remove crypto parameters
2021-07-27 10:18:45 +03:00
Marko Viitanen
164b1a4027
[fix] remove crypto from tests/Makefile.am
2021-07-27 09:30:54 +03:00
Marko Viitanen
5604b6f946
[cleanup] remove all crypto related stuff, fix warnings, move estimate.m to tools/
2021-07-27 09:27:51 +03:00
Marko Viitanen
99a2b0384d
[cleanup] remove some warnings
2021-07-26 11:42:19 +03:00
Marko Viitanen
5e1636dcb9
Merge branch 'alf_threading'
2021-07-26 11:32:30 +03:00
Marko Viitanen
226d7a9f53
[alf] remove alf clipping functions and free tqj_alf_process also when new job is allocated
2021-07-26 11:21:57 +03:00
Marko Viitanen
eb491ecea2
[alf] free state->tqj_alf_process to not leak memory
2021-07-26 10:26:50 +03:00
Marko Viitanen
94109bf5af
[alf] change turn off ALF from most of the intra CI tests
2021-07-25 21:08:07 +03:00
Marko Viitanen
0f8f422ad6
[alf] use correct lcu index with wpp and use proper cabac context for alf search
2021-07-25 20:19:17 +03:00
Marko Viitanen
90ed51a6ad
[alf] remove encoder_state_worker_encode_lcu since it is not used
2021-07-23 21:58:36 +03:00
Marko Viitanen
070dcc1924
[alf] fix alf_info passing to sub_states
2021-07-23 21:54:52 +03:00
Marko Viitanen
dc6862051e
[alf] Initialize all the alf tables in one place
2021-07-23 21:44:09 +03:00
Marko Viitanen
9e70707fba
[alf] Add new wf_recon_jobs and change search/bitstream writing to use local coeff instead of state->coeff
2021-07-23 10:40:19 +03:00
Marko Viitanen
781e6d0f13
[alf] Add CI test for ALF+WPP+OWF
2021-07-22 23:24:30 +03:00
Marko Viitanen
b538f33838
[alf] add new thread queue job alf_process ran before the final bitstream writing
2021-07-22 23:21:00 +03:00
Marko Viitanen
20041740f2
[alf] move parameters to state and fix some static variables causing problems in multithreading
2021-07-22 23:18:56 +03:00
Marko Viitanen
3146f2d17f
[alf] Add job for ALF processing just before writing the bitstream out
2021-07-22 18:46:53 +03:00
Marko Viitanen
c188b1fdf9
[alf] Use correct LCU count
2021-07-22 18:45:33 +03:00
Marko Viitanen
f5d72c250b
Merge branch 'mts_optimization'
2021-07-21 14:12:44 +03:00
Marko Viitanen
0cad1ac3c9
[mts] Add a comment about idct8/idst7 16x16 being unoptimized
2021-07-21 14:02:23 +03:00
Marko Viitanen
d5ef036d35
[mts] change mts_subset tables back to static
2021-07-21 13:54:59 +03:00
Marko Viitanen
60caf2c378
[mts] fix 32x32 idst/idct
2021-07-21 13:44:25 +03:00
Marko Viitanen
c2cd5fb98e
[mts] replace AVX2 DST7/DCT8 16x16 with unoptimized for now
2021-07-21 13:38:17 +03:00
Marko Viitanen
7e089f518d
[mts] add optimized versions of DCT8 and DST7, inverse not yet working properly
...
* Includes new unit tests for the mts
2021-07-21 11:53:15 +03:00
Marko Viitanen
7f67009511
Fix MD5 calculations from HEVC to VVC way
2021-06-24 15:03:29 +03:00