deckcraft/crates
Brandon Thomas ed181a809e Render: pictures with opposite corrections no longer share decoded pixels
The decoded-picture cache keyed adjustments with an xor-multiply mix in
which brightness b, contrast c and -b, -c collide (the sign bits cancel),
so of two copies of a picture, one +40% bright and contrast and one -40%,
both showed whichever was decoded first. The key is now a real hash.

Wild synthetic set: brightness/contrast grid 27.86 -> 15.93.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-13 08:14:09 -04:00
..
anim Transitions like PowerPoint: measured frame by frame and retuned (#366) 2026-10-13 05:31:13 -04:00
av1 Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
bitstream Fix integer overflow on hostile H.264/HEVC parameter sets (#2) 2026-10-09 10:28:31 -04:00
color Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
engine Gradients: read, write and draw a:tileRect 2026-10-13 08:14:08 -04:00
fonts Fonts: a letter with combining marks the run's font lacks takes a face that has them all 2026-10-13 06:48:43 -04:00
format Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
geom Geom: sun, wave and double wave by the standard's formulas 2026-10-13 08:14:09 -04:00
h264 Fix integer overflow on hostile H.264/HEVC parameter sets (#2) 2026-10-09 10:28:31 -04:00
hevc Fix integer overflow on hostile H.264/HEVC parameter sets (#2) 2026-10-09 10:28:31 -04:00
isobmff Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
matroska Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
mcp MCP: the export tool lists PDF and its layout options (#65) 2026-10-10 06:17:37 -04:00
media Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
metafile Pictures: WMF/EMF text, pattern and hatch brushes draw; ActiveX previews show (#336) 2026-10-12 22:40:56 -04:00
model Gradients: read, write and draw a:tileRect 2026-10-13 08:14:08 -04:00
ogg Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
opus Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
pdf Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
pptx Gradients: read, write and draw a:tileRect 2026-10-13 08:14:08 -04:00
render Render: pictures with opposite corrections no longer share decoded pixels 2026-10-13 08:14:09 -04:00
text Fonts: a letter with combining marks the run's font lacks takes a face that has them all 2026-10-13 06:48:43 -04:00
ui-egui Gradients: read, write and draw a:tileRect 2026-10-13 08:14:08 -04:00
vp9 Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00