KamoCRM

/image/preview taglia una foto di chat in un WebP 480px

FeatureConversionService
Shipped
24 settembre 2026 alle ore 23:16 UTC
Author
Kamo
Commit
f7729d9

Un allegato dell'immagine di chat è disegnato al massimo 240x240 CSS px e ogni visualizzatore scaricato l'originale per farlo — una foto del telefono è 3-8 MB. MediaService memorizzare un'anteprima per file memorizzati (ImgDat) e servire a bolle di chat; questo è la taglierina che chiama. ImagePreviewService si adatta al bordo lungo a 480 (2x la scatola), mai upscale, e scrive WebP perdente senza metadati. L'orientamento EXIF è cotto in un ritratto l'anteprima della foto sarebbe altrimenti giacere sul suo lato accanto al suo originale verticale), con autorotato di ffmpeg fuori in modo che nessuna costruzione può ruotare due volte. Vettori, animazioni (GIF, APNG, WebP animato), byte indescrivibili, sorgenti di grandi dimensioni e le anteprime non più piccole dell'originale sono REFUSED — 422 con X-Preview-Refused, che il chiamante può ricordare. Busy/timeout/ffmpeg fallimento è 503 e dice niente dell'immagine. Memoria, dopo la scala logo OOM-ucciso entrambi i pod: ffmpeg corre uno alla volta, E' solo un'idea. 1), scale prima di ruotare, e decodifica un JPEG a 1/2^k nell'IDCT (-basse, mantenendo 2x il bordo di anteprima). Picco RSS misurato con /usr/bin/time -f %M sull'esatto comando: 12 MP JPEG 68 MB, 48 MP JPEG 123 MB, progressivo 12 MP 92 MB, 16 MP PNG 115 MB (184 MB per puro rumore). Ceilings: JPEG 52 MP, PNG/WebP/GIF 16.8 MP, fonte 40 MiB. Solo internamente sul segreto pubblico MediaService presenta già a /transcribe; fallisce chiuso.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing