Commit graph

3711 commits

Author SHA1 Message Date
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 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
Marko Viitanen c9e48f253d Fix hash message with monochrome 2021-06-24 14:48:48 +03:00
Marko Viitanen 1d436844da Remove duplicated code from kvz_rdoq 2021-06-24 13:20:02 +03:00
Marko Viitanen ca0c357268 [rdoq] Fix chroma bit calculations to include >>3 for width and height 2021-06-24 13:19:20 +03:00
Marko Viitanen c004735821 [LMCS] Fix casting of the chroma scaled residual 2021-06-18 09:35:06 +03:00
Marko Viitanen b22fd61c7f [intrapred] Change kvz_luma_mode_bits to make it return more correct costs 2021-06-18 09:35:06 +03:00
Joose Sainio 403531554e Merge branch 'trskip-fix' into 'master'
Use correct context for calculating coeff costs for transform skip

See merge request cs/ultravideo/vvc/uvg266!5
2021-06-09 05:57:47 +00:00
Joose Sainio cfffd7166c Use correct context for calculating coeff costs for transform skip 2021-06-07 13:06:03 +03:00
Marko Viitanen 4594bf0ca8 Merge branch 'lmcs_chroma' 2021-06-02 15:05:04 +03:00
Marko Viitanen cc6ff368df [LMCS] Store calculated chroma scaling values for speedup 2021-06-02 09:33:45 +03:00
Marko Viitanen 5babb14ee7 [LMCS] Use chroma scaling 2021-06-01 12:17:03 +03:00
Marko Viitanen fad11a5c92 [LMCS] Import LMCS chroma functions from VTM13.0 2021-06-01 09:01:55 +03:00
Joose Sainio c548c2ccca Merge branch '4x4-rd' into 'master'
Transform skip and improve 4x4 rd

See merge request cs/ultravideo/vvc/uvg266!4
2021-05-28 11:57:23 +00:00
Joose Sainio f9de8ebc4f Merge branch 'master' into '4x4-rd'
# Conflicts:
#   src/encoder.c
#   tests/test_intra.sh
2021-05-28 11:43:55 +00:00
Marko Viitanen d945ee5d7f Merge branch 'lmcs' 2021-05-28 11:33:25 +03:00
Marko Viitanen ddea6d73c9 [LMCS] Fix blank references in some cases by selecting between source_lmcs and source in init_lcu_t() 2021-05-28 10:57:25 +03:00