diff options
| author | Adam Soltys <[email protected]> | 2026-10-22 10:09:34 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-10-22 10:09:34 -0700 |
| commit | 9aca27c717b713ff6e8ec8a2eeded1dff92c4735 (patch) | |
| tree | 4912de65402cbfd206e856999dd1ac8421022041 | |
| parent | af95c8741c17a371ce03cfc07c54e8294ae68124 (diff) | |
| download | coinosv3-server-9aca27c717b713ff6e8ec8a2eeded1dff92c4735.tar.gz coinosv3-server-9aca27c717b713ff6e8ec8a2eeded1dff92c4735.zip | |
vmedia: pic.webp?s=row, a picture 360px tall in its own shape for the grid's justified rows
Co-Authored-By: Claude Opus 5.5 <[email protected]>
| -rw-r--r-- | vmedia/server.js | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/vmedia/server.js b/vmedia/server.js index 6b6b69a..19e170c 100644 --- a/vmedia/server.js +++ b/vmedia/server.js @@ -12,9 +12,10 @@ // for Linux plays its sound over black). The first ask streams the // transcode as it's made (fragmented MP4); once done it's a plain // faststart file served in ranges and cached for everyone. -// /vmedia/pic.webp?s=col|tile&u=<picture> the picture at the size the -// feed paints it: 1100px wide for the column, or a 360px square of its -// middle for the grid. The app makes these copies itself from a host that +// /vmedia/pic.webp?s=col|tile|row&u=<picture> the picture at the size the +// feed paints it: 1100px wide for the column, a 360px square of its +// middle for a square tile, or 360px tall in its own shape for the grid's +// justified rows. The app makes these copies itself from a host that // allows CORS; one that doesn't (primal's blossom, nostrcheck, most // personal sites) left the <img> painting the original, and a 9528×6328 // camera file froze a wheel scroll for 400 ms on its texture upload. @@ -446,6 +447,7 @@ async function clipResponse(req, src, ip) { const SHAPES = { col: ['--size', '1100x>'], // the 560px column at 2x; never enlarged tile: ['--size', '360x360>', '--smartcrop', 'centre'], // a 120–180px grid tile at 2–3x + row: ['--size', '720x360>'], // a tile in justified rows: the picture's own shape, 360px tall }; const PIC_V = 1; // what the bytes say the file is (the header is often octet-stream, sometimes a lie) |
