Skip to content

feat(video): Video support#1801

Open
marc2332 wants to merge 5 commits intomainfrom
feat/video
Open

feat(video): Video support#1801
marc2332 wants to merge 5 commits intomainfrom
feat/video

Conversation

@marc2332
Copy link
Copy Markdown
Owner

Description

  • Adds use_video / VideoPlayer
  • Adds VideoViewer
  • Some tweaks in Slider

@marc2332 marc2332 added this to the 0.4.0 milestone Apr 19, 2026
@marc2332 marc2332 self-assigned this Apr 19, 2026
@marc2332 marc2332 moved this to Pending for Review in Freya Planning Apr 19, 2026
@github-actions
Copy link
Copy Markdown

Benchmark for 5d0ec99

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 1037.1±32.37µs 1168.2±58.21µs +12.64%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 10.9±0.94ms 11.9±1.21ms +9.17%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 365.6±64.50µs 364.9±58.66µs -0.19%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 30.4±15.61µs 30.5±16.29µs +0.33%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 23.1±3.37ms 18.4±0.50ms -20.35%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 1061.9±48.83µs 1113.4±109.43µs +4.85%
benchmarks/size=19531 depth=7 wide=5 mode=cached 934.4±31.50µs 1106.4±124.60µs +18.41%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 927.2±27.79µs 973.6±22.29µs +5.00%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 214.9±107.96µs 214.4±100.06µs -0.23%
benchmarks/size=54241 depth=5 wide=15 mode=cached 814.1±65.60µs 918.7±112.41µs +12.85%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 859.3±103.92µs 1101.4±226.01µs +28.17%

@github-actions
Copy link
Copy Markdown

Benchmark for a0d8cf6

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 1458.7±242.51µs 1842.2±243.63µs +26.29%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 8.0±0.88ms 7.1±0.70ms -11.25%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 343.6±178.39µs 338.7±141.45µs -1.43%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 29.8±34.08µs 29.9±25.63µs +0.34%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 13.1±1.09ms 18.0±1.35ms +37.40%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 1267.3±202.83µs 1404.4±280.80µs +10.82%
benchmarks/size=19531 depth=7 wide=5 mode=cached 905.3±31.52µs 875.0±16.67µs -3.35%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 906.7±45.41µs 888.8±60.20µs -1.97%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 204.4±155.58µs 202.6±136.82µs -0.88%
benchmarks/size=54241 depth=5 wide=15 mode=cached 860.1±141.84µs 764.2±77.50µs -11.15%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 796.3±136.38µs 779.9±86.76µs -2.06%

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 19, 2026

Performance Comparison mainfeat/video

Total Elapsed Time: 73.66ms → 74.39ms (+1.0%)
CPU Baseline: 96.85µs → 89.54µs (-7.5%)
Benchmark ID: alloc

timing - Function execution time metrics.

+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| Function                          | Calls                    | Avg                              | P33                              | P66                              | P95                             | P99                             | Total                            | % Total                      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 73.37ms → 74.02ms (+0.9%)        | 73.40ms → 74.06ms (+0.9%)        | 73.40ms → 74.06ms (+0.9%)        | 73.40ms → 74.06ms (+0.9%)       | 73.40ms → 74.06ms (+0.9%)       | 73.33ms → 74.04ms (+1.0%)        | 100.00% → 100.00% (+0.0%)    |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 1.76µs → 1.78µs (+1.1%)          | 10.00ns → 10.00ns (+0.0%)        | 20.00ns → 20.00ns (+0.0%)        | 20.00ns → 20.00ns (+0.0%)       | 21.00ns → 21.00ns (+0.0%)       | 56.54ms → 57.18ms (+1.1%)        | 77.10% → 77.23% (+0.2%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 14.57ms → 14.56ms (-0.1%)        | 8.85ms → 8.82ms (-0.3%)          | 9.73ms → 9.40ms (-3.4%)          | 25.15ms → 25.48ms (+1.3%)       | 25.15ms → 25.48ms (+1.3%)       | 43.72ms → 43.68ms (-0.1%)        | 59.62% → 58.99% (-1.1%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 9.42ms → 9.63ms (+2.2%)          | 2.27ms → 2.27ms (+0.0%)          | 9.58ms → 9.18ms (-4.2%)          | 16.42ms → 17.45ms (+6.3%)       | 16.42ms → 17.45ms (+6.3%)       | 28.27ms → 28.89ms (+2.2%)        | 38.55% → 39.02% (+1.2%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 581.00ns → 598.00ns (+2.9%)      | 40.00ns → 50.00ns (+25.0%) ⚠️    | 50.00ns → 60.00ns (+20.0%)       | 90.00ns → 80.00ns (-11.1%)      | 91.00ns → 91.00ns (+0.0%)       | 18.61ms → 19.16ms (+3.0%)        | 25.38% → 25.88% (+2.0%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 513.00ns → 496.00ns (-3.3%)      | 30.00ns → 30.00ns (+0.0%)        | 50.00ns → 50.00ns (+0.0%)        | 211.00ns → 181.00ns (-14.2%)    | 1.05µs → 1.07µs (+1.9%)         | 16.45ms → 15.91ms (-3.3%)        | 22.43% → 21.48% (-4.2%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 4.10ms → 3.96ms (-3.4%)          | 5.01µs → 5.32µs (+6.2%)          | 2.73ms → 2.72ms (-0.4%)          | 9.58ms → 9.18ms (-4.2%)         | 9.58ms → 9.18ms (-4.2%)         | 12.31ms → 11.90ms (-3.3%)        | 16.79% → 16.06% (-4.3%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 4.79ms → 4.81ms (+0.4%)          | 4.53ms → 4.69ms (+3.5%)          | 5.05ms → 4.94ms (-2.2%)          | 5.05ms → 4.94ms (-2.2%)         | 5.05ms → 4.94ms (-2.2%)         | 9.58ms → 9.63ms (+0.5%)          | 13.06% → 13.00% (-0.5%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.54ms → 1.56ms (+1.3%)          | 5.89µs → 5.24µs (-11.0%)         | 2.21ms → 2.20ms (-0.5%)          | 2.49ms → 2.51ms (+0.8%)         | 2.49ms → 2.51ms (+0.8%)         | 9.26ms → 9.36ms (+1.1%)          | 12.63% → 12.64% (+0.1%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 1.69ms → 2.06ms (+21.9%) ⚠️      | 50.00ns → 220.00ns (+340.0%) ⚠️  | 1.42µs → 942.00ns (-33.7%) 🚀    | 5.07ms → 6.17ms (+21.7%) ⚠️     | 5.07ms → 6.17ms (+21.7%) ⚠️     | 5.08ms → 6.17ms (+21.5%) ⚠️      | 6.92% → 8.34% (+20.5%) ⚠️    |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.88ms → 1.89ms (+0.5%)          | 611.00ns → 731.00ns (+19.6%)     | 1.75µs → 2.69µs (+53.7%) ⚠️      | 5.64ms → 5.66ms (+0.4%)         | 5.64ms → 5.66ms (+0.4%)         | 5.64ms → 5.66ms (+0.4%)          | 7.69% → 7.64% (-0.7%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.67ms → 1.65ms (-1.2%)          | 50.00ns → 60.00ns (+20.0%)       | 2.26ms → 2.26ms (+0.0%)          | 2.75ms → 2.68ms (-2.5%)         | 2.75ms → 2.68ms (-2.5%)         | 5.01ms → 4.94ms (-1.4%)          | 6.83% → 6.67% (-2.3%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 237.00ns → 293.00ns (+23.6%) ⚠️  | 181.00ns → 241.00ns (+33.1%) ⚠️  | 220.00ns → 280.00ns (+27.3%) ⚠️  | 310.00ns → 360.00ns (+16.1%)    | 310.00ns → 360.00ns (+16.1%)    | 711.00ns → 881.00ns (+23.9%) ⚠️  | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 153.00ns → 153.00ns (+0.0%)      | 50.00ns → 50.00ns (+0.0%)        | 200.00ns → 180.00ns (-10.0%)     | 210.00ns → 230.00ns (+9.5%)     | 210.00ns → 230.00ns (+9.5%)     | 460.00ns → 460.00ns (+0.0%)      | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+---------------------------------+----------------------------------+------------------------------+

alloc-bytes - Cumulative allocation bytes during each function call (including nested calls).

+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| Function                          | Calls                    | Avg                          | P33                            | P66                          | P95                          | P99                          | Total                        | % Total                      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 61.2 MB → 61.2 MB (+0.0%)    | 61.2 MB → 61.2 MB (+0.0%)      | 61.2 MB → 61.2 MB (+0.0%)    | 61.2 MB → 61.2 MB (+0.0%)    | 61.2 MB → 61.2 MB (+0.0%)    | 61.2 MB → 61.2 MB (+0.0%)    | 100.00% → 100.00% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 1.5 KB → 1.5 KB (+0.0%)      | 88 B → 88 B (+0.0%)            | 11.8 MB → 11.8 MB (+0.0%)    | 23.6 MB → 23.6 MB (+0.0%)    | 23.6 MB → 23.6 MB (+0.0%)    | 47.2 MB → 47.2 MB (+0.0%)    | 77.05% → 77.05% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 12.6 MB → 12.6 MB (+0.0%)    | 6.0 MB → 6.0 MB (+0.0%)        | 8.1 MB → 8.1 MB (+0.0%)      | 23.6 MB → 23.6 MB (+0.0%)    | 23.6 MB → 23.6 MB (+0.0%)    | 37.7 MB → 37.7 MB (+0.0%)    | 61.53% → 61.53% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 7.8 MB → 7.8 MB (+0.0%)      | 875.0 KB → 875.0 KB (+0.0%)    | 1.6 MB → 1.6 MB (+0.0%)      | 21.1 MB → 21.1 MB (+0.0%)    | 21.1 MB → 21.1 MB (+0.0%)    | 23.5 MB → 23.5 MB (+0.0%)    | 38.41% → 38.41% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 6.8 MB → 6.8 MB (+0.0%)      | 6.8 MB → 6.8 MB (+0.0%)        | 6.8 MB → 6.8 MB (+0.0%)      | 6.8 MB → 6.8 MB (+0.0%)      | 6.8 MB → 6.8 MB (+0.0%)      | 13.6 MB → 13.6 MB (+0.0%)    | 22.25% → 22.25% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.6 MB → 1.6 MB (+0.0%)      | 604 B → 604 B (+0.0%)          | 1.4 MB → 1.4 MB (+0.0%)      | 3.3 MB → 3.3 MB (+0.0%)      | 3.3 MB → 3.3 MB (+0.0%)      | 9.4 MB → 9.4 MB (+0.0%)      | 15.32% → 15.32% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 2.6 MB → 2.6 MB (+0.0%)      | 84 B → 84 B (+0.0%)            | 7.8 MB → 7.8 MB (+0.0%)      | 7.8 MB → 7.8 MB (+0.0%)      | 7.8 MB → 7.8 MB (+0.0%)      | 7.8 MB → 7.8 MB (+0.0%)      | 12.71% → 12.71% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 248 B → 248 B (+0.0%)        | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)          | 7.6 MB → 7.6 MB (+0.0%)      | 12.41% → 12.41% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 2.5 MB → 2.5 MB (+0.0%)      | 64 B → 64 B (+0.0%)            | 1.6 MB → 1.6 MB (+0.0%)      | 6.0 MB → 6.0 MB (+0.0%)      | 6.0 MB → 6.0 MB (+0.0%)      | 7.6 MB → 7.6 MB (+0.0%)      | 12.35% → 12.35% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 227 B → 227 B (+0.0%)        | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)          | 7.0 MB → 7.0 MB (+0.0%)      | 11.37% → 11.37% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.4 MB → 1.4 MB (+0.0%)      | 64 B → 64 B (+0.0%)            | 4.2 MB → 4.2 MB (+0.0%)      | 4.2 MB → 4.2 MB (+0.0%)      | 4.2 MB → 4.2 MB (+0.0%)      | 4.2 MB → 4.2 MB (+0.0%)      | 6.84% → 6.84% (+0.0%)        |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.2 MB → 1.2 MB (+0.0%)      | 874.5 KB → 874.5 KB (+0.0%)    | 2.8 MB → 2.8 MB (+0.0%)      | 2.8 MB → 2.8 MB (+0.0%)      | 2.8 MB → 2.8 MB (+0.0%)      | 3.7 MB → 3.7 MB (+0.0%)      | 6.05% → 6.05% (+0.0%)        |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)            | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)            | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+------------------------------+

Threads

Total Alloc: 861.5 KB → 947.3 KB (+10.0%)
Total Dealloc: 664 B → 664 B (+0.0%)
Mem Diff: 860.9 KB → 946.7 KB (+10.0%)

+-----------------+--------------------------------------+-----------+---------------------------------+--------------------------+---------------------------------+
| Thread          | CPU % Avg                            | CPU % Max | Alloc                           | Dealloc                  | Mem Diff                        |
+-----------------+--------------------------------------+-----------+---------------------------------+--------------------------+---------------------------------+
| dev_perf        | 71947.60% → 186627.20% (+159.4%) ⚠️  |           | 860.9 KB → 946.7 KB (+10.0%)    | 520 B → 520 B (+0.0%)    | 860.4 KB → 946.2 KB (+10.0%)    |
+-----------------+--------------------------------------+-----------+---------------------------------+--------------------------+---------------------------------+
| hp-cpu-baseline | 0.00% → 0.00% (+0.0%)                |           | 15 B → 15 B (+0.0%)             | 24 B → 24 B (+0.0%)      | -9 B → -9 B (+0.0%)             |
+-----------------+--------------------------------------+-----------+---------------------------------+--------------------------+---------------------------------+
| hp-threads      | 0.00% → 0.00% (+0.0%)                |           |                                 |                          |                                 |
+-----------------+--------------------------------------+-----------+---------------------------------+--------------------------+---------------------------------+
| 🗑️ hp-functions | 0.00% → 0.00% (+0.0%)                |           |                                 |                          |                                 |
+-----------------+--------------------------------------+-----------+---------------------------------+--------------------------+---------------------------------+

Generated with hotpath-rs

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 19, 2026

Performance Comparison mainfeat/video

Total Elapsed Time: 70.86ms → 67.22ms (-5.1%)
CPU Baseline: 90.28µs → 89.19µs (-1.2%)
Benchmark ID: timing

timing - Execution duration of functions.

+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| Function                          | Calls                    | Avg                              | P33                              | P66                               | P95                              | P99                              | Total                            | % Total                      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 70.59ms → 66.88ms (-5.3%)        | 70.65ms → 66.91ms (-5.3%)        | 70.65ms → 66.91ms (-5.3%)         | 70.65ms → 66.91ms (-5.3%)        | 70.65ms → 66.91ms (-5.3%)        | 70.59ms → 66.88ms (-5.3%)        | 100.00% → 100.00% (+0.0%)    |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 1.65µs → 1.50µs (-9.1%)          | 10.00ns → 10.00ns (+0.0%)        | 20.00ns → 20.00ns (+0.0%)         | 30.00ns → 20.00ns (-33.3%) 🚀    | 40.00ns → 21.00ns (-47.5%) 🚀    | 52.88ms → 47.90ms (-9.4%)        | 74.91% → 71.61% (-4.4%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 13.74ms → 12.71ms (-7.5%)        | 8.34ms → 7.84ms (-6.0%)          | 8.92ms → 8.34ms (-6.5%)           | 23.99ms → 21.95ms (-8.5%)        | 23.99ms → 21.95ms (-8.5%)        | 41.23ms → 38.12ms (-7.5%)        | 58.41% → 57.00% (-2.4%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 9.31ms → 9.14ms (-1.8%)          | 1.96ms → 1.98ms (+1.0%)          | 8.43ms → 9.23ms (+9.5%)           | 17.55ms → 16.23ms (-7.5%)        | 17.55ms → 16.23ms (-7.5%)        | 27.94ms → 27.43ms (-1.8%)        | 39.58% → 41.02% (+3.6%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 497.00ns → 437.00ns (-12.1%)     | 50.00ns → 30.00ns (-40.0%) 🚀    | 81.00ns → 50.00ns (-38.3%) 🚀     | 220.00ns → 180.00ns (-18.2%)     | 491.00ns → 501.00ns (+2.0%)      | 15.94ms → 14.01ms (-12.1%)       | 22.58% → 20.95% (-7.2%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 474.00ns → 392.00ns (-17.3%)     | 40.00ns → 20.00ns (-50.0%) 🚀    | 50.00ns → 30.00ns (-40.0%) 🚀     | 60.00ns → 60.00ns (+0.0%)        | 70.00ns → 61.00ns (-12.9%)       | 15.20ms → 12.56ms (-17.4%)       | 21.54% → 18.78% (-12.8%)     |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 3.83ms → 4.02ms (+5.0%)          | 4.07µs → 3.35µs (-17.7%)         | 3.07ms → 2.82ms (-8.1%)           | 8.43ms → 9.23ms (+9.5%)          | 8.43ms → 9.23ms (+9.5%)          | 11.50ms → 12.05ms (+4.8%)        | 16.28% → 18.02% (+10.7%)     |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 5.28ms → 4.94ms (-6.4%)          | 4.88ms → 4.93ms (+1.0%)          | 5.68ms → 4.97ms (-12.5%)          | 5.68ms → 4.97ms (-12.5%)         | 5.68ms → 4.97ms (-12.5%)         | 10.55ms → 9.89ms (-6.3%)         | 14.95% → 14.79% (-1.1%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.45ms → 1.43ms (-1.4%)          | 8.18µs → 8.10µs (-1.0%)          | 2.06ms → 2.06ms (+0.0%)           | 2.50ms → 2.53ms (+1.2%)          | 2.50ms → 2.53ms (+1.2%)          | 8.72ms → 8.59ms (-1.5%)          | 12.35% → 12.84% (+4.0%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.93ms → 1.93ms (+0.0%)          | 280.00ns → 371.00ns (+32.5%) ⚠️  | 1.92µs → 1.53µs (-20.3%) 🚀       | 5.80ms → 5.78ms (-0.3%)          | 5.80ms → 5.78ms (-0.3%)          | 5.80ms → 5.78ms (-0.3%)          | 8.22% → 8.64% (+5.1%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 1.90ms → 1.63ms (-14.2%)         | 160.00ns → 50.00ns (-68.8%) 🚀   | 1.20µs → 1.26µs (+5.0%)           | 5.69ms → 4.89ms (-14.1%)         | 5.69ms → 4.89ms (-14.1%)         | 5.69ms → 4.89ms (-14.1%)         | 8.06% → 7.31% (-9.3%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.53ms → 1.52ms (-0.7%)          | 251.00ns → 60.00ns (-76.1%) 🚀   | 1.95ms → 1.98ms (+1.5%)           | 2.64ms → 2.58ms (-2.3%)          | 2.64ms → 2.58ms (-2.3%)          | 4.59ms → 4.56ms (-0.7%)          | 6.50% → 6.81% (+4.8%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 274.00ns → 1.52µs (+454.7%) ⚠️   | 231.00ns → 190.00ns (-17.7%)     | 251.00ns → 621.00ns (+147.4%) ⚠️  | 341.00ns → 3.77µs (+1005.6%) ⚠️  | 341.00ns → 3.77µs (+1005.6%) ⚠️  | 823.00ns → 4.58µs (+456.5%) ⚠️   | 0.00% → 0.01% (+100.0%) ⚠️   |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 297.00ns → 210.00ns (-29.3%) 🚀  | 230.00ns → 100.00ns (-56.5%) 🚀  | 280.00ns → 120.00ns (-57.1%) 🚀   | 381.00ns → 411.00ns (+7.9%)      | 381.00ns → 411.00ns (+7.9%)      | 891.00ns → 631.00ns (-29.2%) 🚀  | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+------------------------------+

Threads

+-----------------+--------------------------------------+-----------+
| Thread          | CPU % Avg                            | CPU % Max |
+-----------------+--------------------------------------+-----------+
| dev_perf        | 94202.00% → 546831.70% (+480.5%) ⚠️  |           |
+-----------------+--------------------------------------+-----------+
| hp-functions    | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+
| hp-threads      | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+
| hp-server       | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+
| hp-cpu-baseline | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+

Generated with hotpath-rs

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 19, 2026

Codecov Report

❌ Patch coverage is 3.44828% with 532 lines in your changes missing coverage. Please review.
✅ Project coverage is 60.49%. Comparing base (6057a30) to head (3124e98).

Files with missing lines Patch % Lines
crates/freya-video/src/client.rs 0.00% 230 Missing ⚠️
crates/freya-video/src/viewer.rs 0.00% 191 Missing ⚠️
crates/freya-video/src/player.rs 0.00% 108 Missing ⚠️
crates/freya-video/src/lib.rs 0.00% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1801      +/-   ##
==========================================
- Coverage   61.29%   60.49%   -0.81%     
==========================================
  Files         310      314       +4     
  Lines       39444    39988     +544     
==========================================
+ Hits        24177    24189      +12     
- Misses      15267    15799     +532     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions
Copy link
Copy Markdown

Benchmark for df6b688

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 1396.8±123.43µs 1395.2±237.77µs -0.11%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 8.1±0.59ms 9.2±0.97ms +13.58%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 369.4±196.12µs 379.2±161.94µs +2.65%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 32.1±32.15µs 32.4±32.67µs +0.93%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 14.9±0.52ms 19.4±1.60ms +30.20%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 1010.4±126.27µs 1052.9±91.40µs +4.21%
benchmarks/size=19531 depth=7 wide=5 mode=cached 953.4±13.02µs 978.4±30.26µs +2.62%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 962.8±121.18µs 987.9±98.96µs +2.61%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 222.8±188.50µs 225.3±207.73µs +1.12%
benchmarks/size=54241 depth=5 wide=15 mode=cached 803.8±75.59µs 842.7±49.30µs +4.84%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 803.5±123.77µs 899.1±173.97µs +11.90%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Pending for Review

Development

Successfully merging this pull request may close these issues.

1 participant