Commit Graph
7 Commits
Author SHA1 Message Date
bflatasticandClaude Opus 5.5 c99b20cac3 av1enc: inline the DCT stage helpers so const-generic sizes fold through them
The strict-clippy split of inverse_dct (#2496) passes n at run time; inlining keeps
inverse_dct_n's compile-time sizes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 23:15:48 +07:00
bflatastic d1b736c594 Merge remote-tracking branch 'origin/main' into HEAD 2026-10-29 23:15:17 +07:00
Dylan M. Taylor 8e67bfce47 Refactor av1enc for strict Clippy checks 2026-10-28 06:09:21 +00:00
vangel76andClaude Sonnet 5.5 18ce00da88 av1enc: specialise the inverse transform per size, size the forward tmp buffer
The inverse transform computed its bit-reversal permutations and loop
bounds at run time and went through one generic path for every size.
inverse_dct, the ADST permutations and inverse_2d are now const generic
over the size and inlined, so the permutations fold at compile time.

forward_2d zeroed a 4 KiB tmp buffer on every call, even for 4x4. It now
dispatches to a fixed-size version for 4, 8 and 16 (tmp is exactly n*n
floats); 32 keeps the run-time version, which measured faster than a
const 32 variant. The float operation order is unchanged.

Output is bit-identical.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 12:02:23 +01:00
Brandon ThomasandClaude Opus 5.5 ee90d87742 Never crash: AV1 encoder without expect()/unreachable!()
Replaces the encoder's 11 expect()/unreachable!() calls on internal invariants with handling
that can't panic: the rate-control state is passed in rather than re-borrowed, inter decisions
without a reference frame fall back to intra, per-plane results are bound directly, and the
writer's impossible branches become debug_asserts. Denies the panic lints in the crate.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 13:22:59 -04:00
Brandon ThomasandClaude Opus 5.5 88ca7b45fc M13.4: av1enc speedups (vectorisable forward transform, separable sub-sample paths, cheaper loop filter search), more oracle cases
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 05:40:03 -04:00
Brandon ThomasandClaude Opus 5.5 4130172bbe M13.4: av1enc key and inter frames, bit-exact with libdav1d
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 05:11:08 -04:00