
Immaginate di aprire un’immagine su una connessione lenta e, invece di vedere un quadratone sgranato che gradualmente prende forma, di trovarvi davanti un intero video che scorre fluido, come se fosse un GIF, ma tutto dentro un singolo file .jpg. No, non è un glitch della Matrix e non avete esagerato con il caffè.
Recentemente è emersa una chicca tecnica che sta facendo impazzire i veri amanti del bit-manipulation. Il concetto alla base è sfruttare una caratteristica (spesso ignorata) dei JPEG progressivi. Normalmente, quando scaricate un JPEG progressivo, il browser vi mostra prima le componenti a bassa frequenza (quelle che danno l’idea generale) per poi aggiungere dettagli man mano che arrivano i dati. È un trick geniale per non far sembrare la navigazione un incubazione di un virus degli anni ’90.
L’idea folle dello sviluppatore è stata quella di usare questa caratteristica per il puro, sano trolling. Invece di usare le scansioni successive per migliorare la qualità della stessa immagine, perché non usarle per sovrascrivere i dati con immagini diverse? In pratica, concatenando più scansioni e manipolando i marker (quei famosi byte che dicono al decoder ‘ehi, qui inizia un nuovo pezzo’), si può creare un file che cambia immagine man mano che viene scaricato.
Il problema? I browser moderni non sono esattamente degli alleati della libertà creativa. Per evitare quello che sembra un attacco ‘zip bomb’ (un file che esplode in memoria saturando tutto), i decoder tipo Chrome o Firefox hanno un limite di scansioni che possono gestire prima di dire ‘basta, mi sono stancato’. Se superi una certa soglia, il rendering si interrompe. Per aggirare questo limite, l’autore ha dovuto fare un lavoro di precisione chirurgica, creando scansioni ‘DC-only’ che sono tecnicamente conformi allo standard ma che servono solo a iniettare nuovi frame senza creare artefatti fastidiosi.
Il risultato è una sorta di video ‘low-fi’ che dipende interamente dalla velocità della rete. Se la rete è lenta, il video va a scatti; se è veloce, è più fluido. Non ha alcuna utilità pratica (a parte far svoltare una serata tra amici nerd), ma è un promemoria magnifico di come, finché abbiamo accesso ai bit e ai byte, possiamo ancora trovare modi per scardinare le regole di un formato che pensavamo fosse ormai sepolto sotto strati di WebP e AVIF.
È pura ingegneria del caos. Ed è esattamente il tipo di follia che rende la tecnologia interessante, lontano dagli aggiornamenti noiosi e preconfezionati che ci vengono sbattuti in faccia ogni giorno dalle Big Tech.
Source: Regressive JPEGs
