5 ms·
The "reason" could have just been insufficient future-proofing. Can you guess where the number part of GIF89a comes from? A time when the idea of a network-tran
by Cyberdog 4y ago
The "reason" could have just been insufficient future-proofing. Can you guess where the number part of GIF89a comes from? A time when the idea of a network-transmittable file with 60fps of animation was not an immediate practicality, that's for sure.
That this ancient format is still as prevalent as it is on the modern web is somewhat dumbfounding and probably unintended by its original creators.
- Sakos 4y agoBut why would anybody go out of their way to use centiseconds? That seems like such an odd choice.
- rkagerer 4y agoDid they want to cram a coarse measurement into a smaller amount of bits?
- Dylan16807 4y agoNo, it's a standard 16 bit field. Milliseconds would have allowed more than a minute for a frame. Centiseconds only benefit you when you want a frame time between 1 minute and 10 minutes, so basically never.
- Macha 4y agoIs there a duration field using the same units?
- Dylan16807 4y agoFor the whole animation? I don't think so.
- jjoonathan 4y agoWas the animation use-case forseen or accidental? If they thought they were making a slide show / ad / page flipping tool, I can understand prioritizing longer durations.
- Sakos 4y agoApparently, GIF didn't originally support animation. It was added in GIF89a (https://www.w3.org/Graphics/GIF/spec-gif89a.txt https://www.w3.org/Graphics/GIF/spec-gif89a.txt) with the GCE (Graphic Control Extension). Which adds the delay time field which is the issue. > vii) Delay Time - If not 0, this field specifies the number of hundredths (1/100) of a second to wait before continuing with the processing of the Data Stream. The clock starts ticking immediately after the graphic is rendered. This field may be used in conjunction with the User Input Flag field. Additional info: https://en.wikipedia.org/wiki/GIF#Animated_GIF https://en.wikipedia.org/wiki/GIF#Animated_GIF This doesn't really answer your question, but it's all I could find so far.
- banana_giraffe 4y agoGiven the "announcement" GIF image BOB_89A.GIF was itself a slide show with about 10 seconds between frames, clearly GCE was done with at least slide shows in mind. Incidentally, that same GIF uses the text extension, something basically no modern thing that can show GIFs supports anymore.
- Sakos 4y agoIt's such a weird use case. Why would anybody want a 30 second to 10 minute per image slideshow where you can't control the images?
- banana_giraffe 4y agoWell, I think a poor-man screen saver was a common enough use case for that. That said, you can (or, rather, could) control the images. There's a flag in GIF89a that allows the viewer to skip ahead to the next frame on user input. No modern GIF viewer supports this anymore either. BOB_89A.GIF used this feature to let you skip ahead if you didn't want to just passively watch the slide show.
- whywhywhywhy 4y ago> That this ancient format is still as prevalent as it is on the modern web is somewhat dumbfounding Browser vendors didn't provide any alternatives to animation that just work until very recently. It's not dumbfounding when you take that into consideration. For some reason GIF support was grandfathered in everywhere yet APNG, ability to just upload or embed a video and (god forbid because photoshop still can't open it) WEBP all took decades to be ubiquitous.