From 5970c4000fe7d60d770b9da4b7f62c59a3ff160e Mon Sep 17 00:00:00 2001 From: dreevelle <123705989+dreevelle@users.noreply.github.com> Date: Sun, 9 Aug 2026 13:59:08 +0100 Subject: [PATCH] docs: full 16:9 reference tables for Krea 2 and MiniMax H3 Sweeps to ~4 MP in both modes, in real megapixels. Exact-ratio tables list the complete lattice (256n x 144n at alignment 16, 512n x 288n at 32) -- there is nothing valid between the rows. Area-target tables cover 0.2-4.0 MP in the independent-rounding mode for when a pixel budget matters more than a perfect ratio. Also adds a portrait/landscape ratio table at ~2.36 MP and per-model guidance on which row to pick: Krea 2's sanctioned band tops out at 2.36 MP (2048x1152), H3's native canvas is 1.03 MP with 1.33 MP (1536x864) the highest row worth running by default. All 69 rows verified by parsing them back out of the README and re-deriving each through solve_exact / solve_nearest: zero mismatches, every row on-grid, every exact-ratio row satisfying w*b == h*a. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01CdgKVDqEbD14EJ4RC3GPmg --- README.md | 137 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 121 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index be16bec..c3a5458 100644 --- a/README.md +++ b/README.md @@ -67,28 +67,133 @@ walks you straight into it. ## Reference resolutions -Krea 2 (alignment 16, ~2.36 MP — Turbo's sanctioned 1K–2K band): +All values below are **real** megapixels. If you're migrating from a table computed +with the built-in selector, every label in it is ~4.86% low — a row marked "2.0 MP" +there is really 2.09. -| Ratio | Resolution | Real MP | +### Exact-ratio tables (`exact_ratio = true`) + +These are the *complete* set of true-16:9 grid-aligned resolutions. There is nothing +valid between the rows: the lattice is `256n × 144n` at alignment 16 and +`512n × 288n` at alignment 32. Type the listed megapixels and you get that row back. + +Krea 2 — `alignment = 16`: + +| megapixels | Aspect | Output (alignment=16) | |---|---|---| -| 1:1 | 1536 × 1536 | 2.36 | -| 16:9 | 2048 × 1152 | 2.36 | -| 9:16 | 1152 × 2048 | 2.36 | -| 3:2 | 1824 × 1216 | 2.22 | -| 4:3 | 1728 × 1296 | 2.24 | -| 21:9 | 2352 × 1008 | 2.37 | +| 0.15 | 16:9 | 512 x 288 | +| 0.33 | 16:9 | 768 x 432 | +| 0.59 | 16:9 | 1024 x 576 | +| 0.92 | 16:9 | 1280 x 720 | +| 1.33 | 16:9 | 1536 x 864 | +| 1.81 | 16:9 | 1792 x 1008 | +| 2.36 | 16:9 | 2048 x 1152 | +| 2.99 | 16:9 | 2304 x 1296 | +| 3.69 | 16:9 | 2560 x 1440 | +| 4.46 | 16:9 | 2816 x 1584 | -MiniMax H3 (alignment 32; native canvas is 768 short edge / 1.03 MP, so treat anything -above ~1.3 MP as extrapolation): +MiniMax H3 — `alignment = 32`: -| Ratio | Resolution | Real MP | +| megapixels | Aspect | Output (alignment=32) | |---|---|---| -| 16:9 | 1024 × 576 | 0.59 | -| 16:9 | 1536 × 864 | 1.33 | -| ~1.75:1 | 1344 × 768 | 1.03 (node default, exactly the trained canvas) | +| 0.15 | 16:9 | 512 x 288 | +| 0.59 | 16:9 | 1024 x 576 | +| 1.33 | 16:9 | 1536 x 864 | +| 2.36 | 16:9 | 2048 x 1152 | +| 3.69 | 16:9 | 2560 x 1440 | +| 5.31 | 16:9 | 3072 x 1728 | -Note that on a 32-grid, exact 16:9 only exists at `512n × 288n` — none of the commonly -circulated H3 resolution tables are actually 16:9. +Five rows to 4 MP is genuinely all there is on a 32-grid — which is why none of the +commonly circulated H3 resolution tables are actually 16:9. + +### Area-target tables (`exact_ratio = false`) + +For when you want a specific pixel budget more than a perfect ratio. Each axis is +rounded independently, so the ratio drifts a little. + +Krea 2 — `alignment = 16`: + +| megapixels | Aspect | Output (alignment=16) | +|---|---|---| +| 0.2 | 16:9 | 592 x 336 | +| 0.3 | 16:9 | 736 x 416 | +| 0.4 | 16:9 | 848 x 480 | +| 0.5 | 16:9 | 944 x 528 | +| 0.6 | 16:9 | 1040 x 576 | +| 0.7 | 16:9 | 1120 x 624 | +| 0.8 | 16:9 | 1200 x 672 | +| 0.9 | 16:9 | 1264 x 704 | +| 1.0 | 16:9 | 1328 x 752 | +| 1.2 | 16:9 | 1456 x 816 | +| 1.4 | 16:9 | 1584 x 880 | +| 1.6 | 16:9 | 1680 x 944 | +| 1.8 | 16:9 | 1792 x 1008 | +| 2.0 | 16:9 | 1888 x 1056 | +| 2.25 | 16:9 | 2000 x 1120 | +| 2.5 | 16:9 | 2112 x 1184 | +| 2.75 | 16:9 | 2208 x 1248 | +| 3.0 | 16:9 | 2304 x 1296 | +| 3.25 | 16:9 | 2400 x 1360 | +| 3.5 | 16:9 | 2496 x 1408 | +| 3.75 | 16:9 | 2576 x 1456 | +| 4.0 | 16:9 | 2672 x 1504 | + +MiniMax H3 — `alignment = 32`: + +| megapixels | Aspect | Output (alignment=32) | +|---|---|---| +| 0.2 | 16:9 | 608 x 320 | +| 0.3 | 16:9 | 736 x 416 | +| 0.4 | 16:9 | 832 x 480 | +| 0.5 | 16:9 | 928 x 544 | +| 0.6 | 16:9 | 1024 x 576 | +| 0.7 | 16:9 | 1120 x 640 | +| 0.8 | 16:9 | 1184 x 672 | +| 0.9 | 16:9 | 1280 x 704 | +| 1.0 | 16:9 | 1344 x 736 | +| 1.2 | 16:9 | 1472 x 832 | +| 1.4 | 16:9 | 1568 x 896 | +| 1.6 | 16:9 | 1696 x 960 | +| 1.8 | 16:9 | 1792 x 992 | +| 2.0 | 16:9 | 1888 x 1056 | +| 2.25 | 16:9 | 1984 x 1120 | +| 2.5 | 16:9 | 2112 x 1184 | +| 2.75 | 16:9 | 2208 x 1248 | +| 3.0 | 16:9 | 2304 x 1312 | +| 3.25 | 16:9 | 2400 x 1344 | +| 3.5 | 16:9 | 2496 x 1408 | +| 3.75 | 16:9 | 2592 x 1440 | +| 4.0 | 16:9 | 2656 x 1504 | + +Ratio drift is under 1% for most Krea 2 rows, but gets bad on H3 at the low end — +6.9% at 0.2 MP, where a 32 px step is a large fraction of a 320 px axis. Below about +0.6 MP on H3, use the exact lattice instead. + +### Other ratios at ~2.36 MP (Krea 2, `alignment = 16`) + +| megapixels | Aspect | Output (alignment=16) | +|---|---|---| +| 2.36 | 1:1 | 1536 x 1536 | +| 2.36 | 16:9 | 2048 x 1152 | +| 2.36 | 9:16 | 1152 x 2048 | +| 2.22 | 3:2 | 1824 x 1216 | +| 2.22 | 2:3 | 1216 x 1824 | +| 2.24 | 4:3 | 1728 x 1296 | +| 2.24 | 3:4 | 1296 x 1728 | +| 2.37 | 21:9 | 2352 x 1008 | +| 2.37 | 9:21 | 1008 x 2352 | + +### Picking a row + +**Krea 2** — the official envelope is a 1K–2K long edge, so 2.36 MP (2048×1152) is the +top of sanctioned territory. The 2.99 and 3.69 rows are extrapolation: expect detail +repetition rather than sharper eyes. + +**MiniMax H3** — the native canvas is a 768 short edge, 768×1344 ≈ 1.03 MP +(`BASE_SHORT_EDGE` / `MAX_PIXELS` in `comfy_extras/nodes_minimax_h3.py`), and 1344×768 +is the node default. 1.33 MP (1536×864) is a mild ~29% stretch and the highest row +worth running by default. 2.36 MP is 2.3× the trained area and 3.69 MP is 3.6×; motion +coherence degrades before sharpness improves. ## Nodes