IDCT prescale + Lanczos3  vs  pure Lanczos3

Input: Moscow_July_2011-4a.jpg (5188×6207). --idct-min-factor 2.5. Images render at intrinsic pixel size — no CSS scaling.
Firefox would skip the IDCT path on this image — 5188 × 6207 isn't a whole number of MCU blocks (16 × 16), so trailing-MCU padding could smear into visible pixels (crbug.com/890745, libjpeg-turbo#297). The IDCT renders below show what would happen if the gate were lifted; in stock Firefox with this commit, output matches the pure-Lanczos column.
Space or click the button toggles every pair at once. Click a single image to toggle just that pair. Hold Shift while clicking the toolbar button to swap continuously.
1/2 barely target 1038 × 1241 · IDCT 1/2 → 2594×3104 · Lanczos ratio ˜ 2.50×
IDCT pure
IDCT ● click to flick PURE ● click to flick
IDCT+Lanczos ⇄ pure Lanczos @ 1038×1241
diff abs diff ×10
pixel delta, amplified 10×
1/2 heavy target 520 × 622 · IDCT 1/2 → 2594×3104 · Lanczos ratio ˜ 4.99×
IDCT pure
IDCT ● click to flick PURE ● click to flick
IDCT+Lanczos ⇄ pure Lanczos @ 520×622
diff abs diff ×10
pixel delta, amplified 10×
1/4 barely target 519 × 621 · IDCT 1/4 → 1297×1552 · Lanczos ratio ˜ 2.50×
IDCT pure
IDCT ● click to flick PURE ● click to flick
IDCT+Lanczos ⇄ pure Lanczos @ 519×621
diff abs diff ×10
pixel delta, amplified 10×
1/4 heavy target 260 × 311 · IDCT 1/4 → 1297×1552 · Lanczos ratio ˜ 4.99×
IDCT pure
IDCT ● click to flick PURE ● click to flick
IDCT+Lanczos ⇄ pure Lanczos @ 260×311
diff abs diff ×10
pixel delta, amplified 10×
1/8 barely target 259 × 310 · IDCT 1/8 → 649×776 · Lanczos ratio ˜ 2.51×
IDCT pure
IDCT ● click to flick PURE ● click to flick
IDCT+Lanczos ⇄ pure Lanczos @ 259×310
diff abs diff ×10
pixel delta, amplified 10×
1/8 heavy target 130 × 155 · IDCT 1/8 → 649×776 · Lanczos ratio ˜ 5.01×
IDCT pure
IDCT ● click to flick PURE ● click to flick
IDCT+Lanczos ⇄ pure Lanczos @ 130×155
diff abs diff ×10
pixel delta, amplified 10×