LUMIERA.clone/tests
Ichthyostega 27089550d2 clean-up: relocate frame quantisation operations
The `FixedFrameQuantiser` relied on three functions from the raw-time handling library.
Since this (and NTSC drop-frame) are the only usages, these functions
can be relocated into the implemntation translation unit `lib/time/quantiser.cpp`

On closer inspection, this reveals some room for improvements:
Instead of relying on raw-computation functions written in C,
we could rather revert the dependency and express these computations
in terms of our Time-entities, which are written in C++, are much more
systematic and provide consistency checks and protection against numeric
overflow, all integrated with linear arithmetic and concise notation.

After performing these rearrangements,
most of the functions can be collapsed into ''almost nothing''.

This was taken as opportunity to re-check and improve the remaining
implementation core of the `FixedFrameQuantiser` -- the handling of
extreme corner cases can be much improved, now representing the
"grid-local time" as `Offset`, which doubles the possible value range.

The reworked unit test shows that, with this change, now the limitation
happens prior to quantisation, meaning that we always get a grid-aligned
result, even in the most extreme corner cases.
2025-05-28 23:49:01 +02:00
..
basics clean-up: relocate frame quantisation operations 2025-05-28 23:49:01 +02:00
core clean-up: remove gavl_time_t as external dependency 2025-05-17 23:12:47 +02:00
include
library clean-up: relocate NTSC drop-frame conversion functions 2025-05-27 23:39:36 +02:00
operation Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
plugin Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
stage clean-up: remove gavl_time_t as external dependency 2025-05-17 23:12:47 +02:00
tool Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
vault clean-up: remove gavl_time_t as external dependency 2025-05-17 23:12:47 +02:00
00helloworld.tests
00support.tests Library: option to provide an explicit random seed for tests 2024-11-12 15:49:15 +01:00
00test.tests Upgrade: fix test-failures (1) 2025-04-24 23:39:58 +02:00
10errorhandling.tests
10exception.tests Library: discontinue setting error flag from Exceptions (see #1341) 2023-10-01 20:11:45 +02:00
11concurrency.tests LibraryApplication: tie DispatcherLoop to thread lifecycle 2023-10-12 20:23:59 +02:00
11list.tests
11locking.tests Library/Application: complete technology switch (closes #1279) 2023-10-16 01:44:04 +02:00
11luid.tests
11safeclib.tests
11vault-memory.tests Block-Flow: completed implementation of low-level cyclic extent storage 2023-07-12 21:55:50 +02:00
12metaprogramming.tests Invocation: complete closure-helper and tests 2025-02-18 00:24:55 +01:00
15library.tests Clean-up: reimplement the SeachPathSplitter 2025-04-28 19:14:27 +02:00
16calculation.tests Library: now using controlled seed and replaced rand (closes #1378) 2024-11-17 19:45:41 +01:00
20config_lowlevel.tests
20threads.tests
22config_highlevel.tests
25fundamental.tests clean-up: relocate NTSC drop-frame conversion functions 2025-05-27 23:39:36 +02:00
30backend-file.tests
30interfaces.tests
31plugin.tests
32scheduler.tests Library: Testsuite maintenance 2024-11-16 00:38:57 +01:00
40core.tests Global-Layer-Renaming: adapt lots of documentation 2018-11-15 21:13:52 +01:00
41asset.tests Assets: investigating the unclear distinction between asset::Struct and asset::Meta (#1156) 2018-09-14 21:06:12 +02:00
42query.tests Global-Layer-Renaming: adapt lots of documentation 2018-11-15 21:13:52 +01:00
43session.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
44controller.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
45builder.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
46fixture.tests Dispatcher-Pipeline: create hook for self-validation 2023-06-12 01:18:59 +02:00
46node.tests Invocation: ++ Milestone ++ invoke complex render graph 2025-02-19 23:27:52 +01:00
47engine.tests Invocation: investigate forwarding an output data block 2024-12-23 02:31:29 +01:00
48playout.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
49core-integration.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
51-gui-model.tests Segmentation: structure analysis for splitSplice operation 2023-05-02 04:29:34 +02:00
52-gui-control.tests Global-Layer-Renaming: fix remaining textual usages and IDs in the code 2018-12-10 00:09:56 +01:00
80-regression.tests
DIR_INFO
SConscript Upgrade: fix test-failures (1) 2025-04-24 23:39:58 +02:00
test.conf Testsuite: increase virtual memory limit 2023-10-04 22:42:37 +02:00
test.sh Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
testrunner.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00