Commit graph

4253 commits

Author SHA1 Message Date
Joose Sainio e1fcd8b2e4 Add missing bits to kvz_mock_encode_coding_unit 2022-03-25 13:27:34 +02:00
Joose Sainio eb8663fbd1 Move split flag coding to its own function 2022-03-25 13:09:37 +02:00
Joose Sainio 548f23f7d7 temporarily set tile test to gop 0 2022-03-25 11:07:35 +02:00
Joose Sainio 99ddc209fc Fix cclm when tiles are enabled 2022-03-25 10:20:44 +02:00
Joose Sainio 41c9f5b858 Fix undefined behavior 2022-03-25 09:29:35 +02:00
Joose Sainio 2050de8891 Fix cclm prediction generation for depth 0 2022-03-25 08:54:31 +02:00
Joose Sainio b321015426 Use kvz_luma_mode_bits to count luma_mode_bits 2022-03-24 14:57:18 +02:00
Joose Sainio 7aa361696d Facilitate bit counting in encode_intra_luma_coding_unit 2022-03-24 13:34:26 +02:00
Joose Sainio b2a94d4276 Move transform coding and chroma cu coding out of encode_intra_coding_unit 2022-03-24 12:09:14 +02:00
Joose Sainio a88553b206 fix jccr and improve intra parameter passing 2022-03-24 11:11:33 +02:00
Joose Sainio 0be443d309 WIP: Merge remote-tracking branch 'remotes/kvz_github/master' into update-cabac-during-search 2022-03-21 11:03:46 +02:00
Joose Sainio 6918ab80ae Merge branch 'rd-cost-inter-final' into 'master'
Update cabac context during search and add missing bits during rd search

See merge request cs/ultravideo/kvazaar!9
2022-03-18 08:50:11 +02:00
Joose Sainio 9b7dc207b6 remove unnecessary copying of cabac state 2022-03-18 08:28:32 +02:00
Joose Sainio e39fbb11a7 Disable bit calculations that always degrade quality 2022-03-18 08:28:32 +02:00
Joose Sainio 352d6750f5 Remove instrumentation code 2022-03-18 08:28:32 +02:00
Joose Sainio 1ae5ecdec5 include pred_mode_bits for 2Nx2N inter pus for rd=0/1
# Conflicts:
#	src/search_inter.c
2022-03-18 08:28:31 +02:00
Joose Sainio b0037b814d Use correct lambda
# Conflicts:
#	src/search_inter.c
2022-03-18 08:28:31 +02:00
Joose Sainio 00516d3dce Make sure intra does not accidentally skip coeff cost calculation 2022-03-18 08:28:31 +02:00
Joose Sainio e0ed91658b Fix no-early-skip without breaking early-skip 2022-03-18 08:28:31 +02:00
Joose Sainio d1ba62aea9 Better inter bit_costs for rdo < 2 2022-03-18 08:28:31 +02:00
Joose Sainio d720305fea Don't double count some of the bits 2022-03-18 08:28:31 +02:00
Joose Sainio 2ac9daf6e4 accurate inter bit cost during search 2022-03-18 08:28:30 +02:00
Joose Sainio 49c8334dd7 count skip flag 2022-03-18 08:28:30 +02:00
Joose Sainio 8cd81e3dcf Only count smp extra cbf bits when rd < 2 2022-03-18 08:28:30 +02:00
Joose Sainio 3ac17ffd95 better early skip? 2022-03-18 08:28:30 +02:00
Joose Sainio c7174b25cf smp/amp CUs cannot be skipped 2022-03-18 08:28:30 +02:00
Joose Sainio 71b1e59548 Better early-skip? 2022-03-18 08:28:30 +02:00
Joose Sainio ff02a84a96 Probably better order of things 2022-03-18 08:28:30 +02:00
Joose Sainio a9255901d9 Only perform rd2 calculation on the best candidate of the list if it exists
But only for 2Nx2N blocks
2022-03-18 08:28:29 +02:00
Joose Sainio a0e7165df4 use correct pu for rd calc 2022-03-18 08:28:29 +02:00
Joose Sainio 6d73db5a2a Probably correct RD cost calculation for all inter modes 2022-03-18 08:28:29 +02:00
Joose Sainio 1a9e54601f Calculate rd2 cost for all inter modes instead of just the final one 2022-03-18 08:28:29 +02:00
Joose Sainio 5afd3570f6 Update cu_qt_root_cbf_model 2022-03-18 08:28:29 +02:00
Joose Sainio f3f0037123 include root_cbf cost 2022-03-18 08:28:29 +02:00
Joose Sainio aaac260438 better merge cost 2022-03-18 08:28:28 +02:00
Joose Sainio 159793f5b4 more accurate get_mvd_coding_cost 2022-03-18 08:28:28 +02:00
Joose Sainio 8d12884e43 disable VERBOSE 2022-03-18 08:28:28 +02:00
Joose Sainio 5ed1ffb5d4 WIP: pre Christmas 2022-03-18 08:28:28 +02:00
Joose Sainio f83e21735c Fix couple of mistakes 2022-03-18 08:28:28 +02:00
Joose Sainio 243e45f07e accurate bit cost calculation when using transform skip 2022-03-18 08:28:28 +02:00
Joose Sainio a038ccc19a add back bitcost for 4×4 intra PUs 2022-03-18 08:28:27 +02:00
Joose Sainio 951a845f08 Remove consts and fix wrong types 2022-03-18 08:28:27 +02:00
Joose Sainio 64b2806cc8 Add couple of missing bits to the calculation and get intra neighbours from lcu rather than cu_array 2022-03-18 08:28:27 +02:00
Joose Sainio aea1133e6a Function for mock coding a CU and counting the bits 2022-03-18 08:27:22 +02:00
Joose Sainio 4b8d217f2d Add new macro for potentially updating cabac context when obtaining the bit cost 2022-03-18 08:19:57 +02:00
Joose Sainio d8648fe1de Preparation for accurately counting inter bits 2022-03-18 08:19:57 +02:00
Joose Sainio 311fceade7 Force use inter 2022-03-18 08:19:56 +02:00
Joose Sainio 1fb69d5e22 Correct tr depth bit calculation 2022-03-18 08:18:04 +02:00
Joose Sainio de3a76d874 Correctly calculate bits for transform split, however updating is done incorrectly, but cannot be fixed easily unfortunately 2022-03-18 08:18:04 +02:00
Joose Sainio dacc15f33b Count pred mode bit 2022-03-18 08:18:03 +02:00