Commit graph

4005 commits

Author SHA1 Message Date
Marko Viitanen 576bf569d3 [build] Replace visual studio and autotools build systems with CMake 2022-04-28 14:13:20 +03:00
Marko Viitanen 227556a13e [build] Remove support for the yasm asm build 2022-04-28 14:12:09 +03:00
siivonek f8375f9bc6 Update docs. 2022-03-17 14:16:57 +02:00
siivonek c9cbadad8a Merge branch intra_mip. 2022-03-17 12:04:59 +02:00
Joose Sainio f94102f061 Merge branch 'fix-intra-in-ra' into 'master'
Fix intra in ra

See merge request cs/ultravideo/vvc/uvg266!9
2022-03-14 11:56:07 +02:00
Joose Sainio f1a3aa60dd Don't write prediction mode for 4x4 intra cus 2022-03-14 10:34:06 +02:00
Joose Sainio eff8d7cdac Fix picture headers for open-gop 2022-03-14 10:32:46 +02:00
Joose Sainio 0dd7646a34 Fix mip context calculation for P and B slices 2022-03-10 10:48:37 +02:00
siivonek ae2e0da6ab [mip] Add parenthesis around macro parameters. 2022-03-04 00:19:01 +02:00
siivonek fa963234a8 [mip] Fix CI error. Const modifier in wrong place. 2022-02-16 17:14:26 +02:00
siivonek 9b04a6f302 [mip] Combine mip mode search loop into the original intra mode search loop. Some code clean up. 2022-02-15 11:24:01 +02:00
siivonek ac45a5299c [mip] Add define for number of mip modes. Fix mip cost calculation. If mip is enabled, the cost of writing of mip flag must always be included. Some code cleanup. 2022-02-10 02:31:13 +02:00
siivonek 09f3af81c6 [mip] Improve mip flag context function. 2022-02-10 00:41:20 +02:00
siivonek 7577d5e4fb [mip] Add CI test. 2022-02-09 12:55:18 +02:00
siivonek 769703ea71 [mip] Fix mpm mode selection. When neighboring CU uses MIP, signaled intra mode must be planar. Fix chroma reconstruction when MIP is enabled. Only allow MIP to be used if chroma scheme is 444. Otherwise use planar mode. 2022-02-09 12:55:18 +02:00
siivonek e8ef0d2b28 [mip] Fix undefined behaviour error in CI test. 2022-02-09 12:55:17 +02:00
siivonek fcde90fbe0 [mip] Change kvz_pixel to int inside MIP implementation since some temp values could be negative. Add define for intra reference line length. Fix bug where wrong intra mode was passed to recon after search. 2022-02-09 12:55:17 +02:00
siivonek df5cbbe82f [mip] Fix issue with invalid MIP modes written into cabac. Fix Mip mode cost estimation. Implement function to derive mip flag context id. Fix some asserts. Replace floor log 2 implementation with existing kvz math function. 2022-02-09 12:55:17 +02:00
siivonek d2c24c9a0c [mip] Fix error in deriving MIP flag context id. 2022-02-09 12:55:17 +02:00
siivonek 8aea4f67f7 [mip] Fix reference indexing error. 2022-02-09 12:55:17 +02:00
siivonek b8a8bce55a [mip] Fix MIP bit cost calculation. 2022-02-09 12:55:17 +02:00
siivonek 55e4091030 [mip] Fix MIP cabac write. 2022-02-09 12:55:16 +02:00
siivonek a4366dbcc5 [mip] Fix error which caused asan CI test to fail. Was caused by an uninitialized intra CU mip value. 2022-02-09 12:55:16 +02:00
siivonek 6b33957978 [mip] Implement MIP bit cost calculation. 2022-02-09 12:55:16 +02:00
siivonek 0cf89e9516 [mip] Fix CI errors. 2022-02-09 12:55:16 +02:00
siivonek d5e2bbd824 [mip] Fix things according to comments. Fix asserts. Remove MIP from chroma recon and search calls. WIP mip mode cost calculation. 2022-02-09 12:55:16 +02:00
siivonek 2daa8ad537 [mip] Implement cabac write. 2022-02-09 12:55:16 +02:00
siivonek 59a86f339e [mip] Implement MIP search. 2022-02-09 12:55:16 +02:00
siivonek e672f9b24a [mip] Implement MIP functions. 2022-02-09 12:55:15 +02:00
siivonek 0b9568b466 Re-add debug files to project file filters. Makefile spaces to tabs. 2022-02-09 12:55:15 +02:00
siivonek cb2ccce753 [mip] WIP Implement mip functions. 2022-02-09 12:55:15 +02:00
siivonek 3bbef3dff6 [mip] Add mip weight matrices. 2022-02-09 12:55:15 +02:00
siivonek 746ae8ab85 [mip] WIP Implement mip functions. 2022-02-09 12:55:15 +02:00
siivonek 07d78e07a6 [mip] Add defines. 2022-02-09 12:55:15 +02:00
siivonek e7da0712e5 [mip] Add commandline option for MIP. 2022-02-09 12:55:15 +02:00
Jaakko Laitinen 25a8a40de0 Merge branch 'deblock_fix' into 'master'
[Deblock] Fix deblock when using inter

See merge request cs/ultravideo/vvc/uvg266!8
2021-12-31 14:41:06 +02:00
Jaakko Laitinen 57d8623931 [Deblock] Fix B-frame detection 2021-12-30 16:18:43 +02:00
Jaakko Laitinen fe9d673b2a [Deblock] Fix Luma issue
mvdThreashold set incorrectly
2021-12-29 17:26:00 +02:00
Marko Viitanen 67ba444884 Add initial .clang-format 2021-12-27 16:05:22 +02:00
siivonek 4ffef711d7 Merge branch 'intra_mrl_cost' 2021-12-15 15:51:19 +02:00
Marko Viitanen 5358e9f3e3 Merge branch 'thread_dep_fixes' 2021-12-15 10:48:24 +02:00
Marko Viitanen 2545081be5 [threading] Added more margin to fracmv_within_tile() because of nondeterministic behaviour 2021-12-14 11:16:43 +02:00
Marko Viitanen 2cdeff75cb [debug] Add debug.c/.h to visual studio project and some debugging options 2021-12-14 11:15:35 +02:00
Jaakko Laitinen 77457391b4 [Deblock] Refactor deblock pixel gather
Refactor deblock pixel gather for large blocks to be less confusing.
2021-12-10 19:05:43 +02:00
Marko Viitanen dce5c2b293 [threading] Add dependency to one more CTU to the right
* in VVC the conditions for limiting motion vectors might not have been correct
 * x + 1 and y + 1 CTU dependency did not mean that x + 2 would be available, as in HEVC
2021-12-10 16:07:34 +02:00
Jaakko Laitinen 60119ca3fa [CI] Enable Deblock in slice tests 2021-12-10 15:40:39 +02:00
Jaakko Laitinen 9a67e622f5 [CI] Enable Deblock in tests 2021-12-10 15:30:48 +02:00
Jaakko Laitinen 9e95b16368 [Deblock] Fix chroma deblocking issues when inter is enabled
Added cbf_copy() calls for chroma components in the lcu_fill_cbf() function since deblocking now uses that information for chroma as well.
2021-12-10 15:30:47 +02:00
siivonek 236265a1f4 [mrl] Implement MRL bitcost calculation. 2021-12-09 16:43:25 +02:00
siivonek dea3ca12aa Merge branch 'intra_mrl' 2021-12-08 15:51:50 +02:00