Live data from Hacker News

Regressive JPEGs

maurycyz.com

51–60 of 72 posts

Re: Regressive JPEGs

#51
post #45
post #29

I did something very similar with progressive (adam7 interlaced) PNG: https://www.da.vidbuchanan.co.uk/adamation/image.png > so playback is entirely dependent on network delay Ultimately true, but I set up my server to send each "frame" separately, with a fixed delay between each. Each frame is small so unless your network is unusually slow, the timing is set by my server.

Interesting that people are making hacks of PNG to do animations, yet there's also APNG sitting over there saying "Hey I exist!"

We even have proper video codecs like h264!

Re: Regressive JPEGs

#52
post #45
post #29

I did something very similar with progressive (adam7 interlaced) PNG: https://www.da.vidbuchanan.co.uk/adamation/image.png > so playback is entirely dependent on network delay Ultimately true, but I set up my server to send each "frame" separately, with a fixed delay between each. Each frame is small so unless your network is unusually slow, the timing is set by my server.

Interesting that people are making hacks of PNG to do animations, yet there's also APNG sitting over there saying "Hey I exist!"

Sure, but most sites strip the animation out of APNGs while still allowing GIFs, which is frustrating.

Re: Regressive JPEGs

#54
post #32

> “Besides unconventional rickrolls and other trolling, this has no practical applications: there's no way to add timing information, so playback is entirely dependent on network delay.” A progress bar for something that’s loading in parallel over the same network, to give the user an idea of how much the delay is?

If i remember correctly, some other places of the internet (4chan) completely this sort of behavior because people use it to hide images of ...unsavory topics

I think you dropped a word.

Re: Regressive JPEGs

#55
Is it possible to acquire lower frequency components with a camera too?

This also reminded me of MRI where low frequency is acquired first in a space called k-space

Re: Regressive JPEGs

#57
post #29

I did something very similar with progressive (adam7 interlaced) PNG: https://www.da.vidbuchanan.co.uk/adamation/image.png > so playback is entirely dependent on network delay Ultimately true, but I set up my server to send each "frame" separately, with a fixed delay between each. Each frame is small so unless your network is unusually slow, the timing is set by my server.

If you have control over the HTTP server, a different technique is to set "refresh" in the response header[1], which makes the client fetch new animation frames periodically. This is the technique used in a 2013 IOCCC entry to show a continuously updated clock that's rendered as PNG[2].

[1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/...

[2] https://www.ioccc.org/2013/mills/index.html

The "Refresh" header is encoded backwards on this line:

https://github.com/ioccc-src/winner/blob/619f554bbdb19e5003a...

Re: Regressive JPEGs

#59

Adjacent advice: I've recently played with opengl and jpeg turbo and I wanted to display images fast. I don't remember exact numbers, but enabling progressive for a jpeg was a significant slowdown for decoding. So if anyone like me is stuck with the old school advice that progressive is an nice to have, it's likely not. I personally don't remember any visual progressive image buildup in like decades, so it's not doin…

[flagged]

Re: Regressive JPEGs

#60
Weird that it’s inconsistent

Works fine for me in desktop Firefox. But on mobile iOS the “whole video within a jpeg” is 3 frames, all of which are nearly entirely solid color brown->orange->red with a vague cat silhouette. The color changes each frame, so you can tell it’s “working” but it’s certainly not what I’d call a video.

I was surprised when I pulled it up on my desktop and it did actually play like a video. Wonder if it’s causing some weird iOS image decoding glitch/edge case.

Post reply on HN