• Hey Trainers! Be sure to check out Corsola Beach, our newest section on the forums, in partnership with our friends at Corsola Cove! At the Beach, you can discuss the competitive side of the games, post your favorite Pokemon memes, and connect with other Pokemon creators!
  • Due to the recent changes with Twitter's API, it is no longer possible for Bulbagarden forum users to login via their Twitter account. If you signed up to Bulbagarden via Twitter and do not have another way to login, please contact us here with your Twitter username so that we can get you sorted.

APNG is dumb

Eevee

hacking the gibson
Joined
Jun 6, 2005
Messages
146
Reaction score
0
http://archives.bulbagarden.net/wiki/File:Aura_Sphere_ani.png

This image is 1.5MB. Webkit and Trident—that is, 75% of the browser market—cannot render any more than the first frame, which is only about 11KB worth of data. There are 274 frames in this image, and the vast majority of users can only see the first one.

http://stuff.veekun.com/aura-sphere.gif

This file is 645KB, less than half the size—because there are lots of good tools that can optimize GIFs. It works in every single major browser. It has the same amount of color information—contrary to popular belief, GIF is only limited to 256 colors per frame, not per image. The framerate is wonky because, well, I have no way to tell what it should be: there are barely any tools for working with APNGs. The best I could do was dump all the frames and stitch them back together at an arbitrary constant framerate.

APNG was invented because Mozilla needed animations with translucency for Firefox's UI. That's all. It's not a recommended standard. It's not the wave of the future. It was rejected by the PNG group. Nobody has any reason to implement it, especially when there was already a format that does the same thing.

If you want to use something nobody can see as a push for support, you could always jump on MNG! At least Konqueror can render those, I think.
 
I don't think anyone's willing to convert 1000+ APNG images to MNG just because Microsoft doesn't care about its customers enough (does IE support that either? at least it doesn't have that one-frame backwards compatibility). And the solution for people who want to see the animation is trivial: download a better browser.
 
Safari and Chrome do not support APNG. But perhaps more relevant, your server is losing a ton of bandwidth for absolutely no reason.

This also means that no mobile device, anywhere, supports APNG—Fennec notwithstanding.


When Microsoft invents something for their own purposes and it gets used by people who say "just use IE", there's a huge outcry. Hm.

Please don't complain about IE just because it's IE. There's are specific reasons nerds dislike IE, and one of them is exactly the case with APNG.
 
I don't think anyone's willing to convert 1000+ APNG images to MNG just because Microsoft doesn't care about its customers enough (does IE support that either? at least it doesn't have that one-frame backwards compatibility). And the solution for people who want to see the animation is trivial: download a better browser.

Actually, there is a "plugin" that makes IE support MNGs. Downloading a "better" browser can be too much of a drastic change for inexperienced computer users.
I believe there are patches for Firefox, too.
 
And the solution for people who want to see the animation is trivial: download a better browser.
But Chrome is nearly as good, if not better than, FireFox. I switch between the two when one is being shittier than the other. Plus people shouldn't have to view the image just because they don't prefer FireFox, why not help EVERYONE?
 
aPNG support in browsers is poor; there's no getting around it. Firefox and and Opera are the only major browsers that do it, as far as I know. There's Seamonkey as well, but who cares about that? I don't really care for Firefox, but I do use Opera so it doesn't really bothered me.

Eevee may have a point about the bandwidth, though. It seems like a great deal to waste for animations that many (probably the majority) of browsers will never see. I like the PNG format, and I have to admit animated PNGs are a good idea given the limitations of GIF; but unless it's accepted as a recognized standard the support is going to remain poor.
 
http://stuff.veekun.com/aura-sphere.gif

This file is 645KB, less than half the size—because there are lots of good tools that can optimize GIFs.

http://img819.imageshack.us/img819/2995/auraspher.png

This 256-colors APNG file is only 317KB, half the size of your GIF.

there are barely any tools for working with APNGs.

There are plenty of software on http://animatedpng.com , while no one wants to write MNG tools.

It's not the wave of the future.

It certainly is. Other browsers will eventually get tired of ancient GIFs. One day, they'll want something better, and you know what they'll choose.
 
This 256-colors APNG file is only 317KB, half the size of your GIF.
My GIF has more than 256 colors. Does this middle ground exist for APNG?

There are plenty of software on http://animatedpng.com
Most of which is separate clunky Windows-only software or poorly-documented single-use command line tools. I had to use apngdis to break apart the image on BP, after compiling it myself, and it just dumps files named apngframe*.png into the cwd. It's like 1998 all over again.

while no one wants to write MNG tools.
I was kidding about MNG. Though ImageMagick/GraphicsMagick can read/write MNG and GIMP can write it, and have been able to do so for quite some time. GIMP needs a plugin to do anything with APNG, and IM/GM just don't support it at all.

It certainly is. Other browsers will eventually get tired of ancient GIFs. One day, they'll want something better, and you know what they'll choose.
An ad-hoc format invented for one vendor's UI because they suddenly discovered they had a use case for the format they previously supported but removed because there wasn't enough of a use case? Great, we need way more of those!
 
GIF is even dumber. And MNG is hardly supported either. At least apng isn't an entirely separate file format. It's saved as .png for people with idiot browsers that can't watch. And they're not losing anything.

As for loading stuff that's not used... believe me. There's a lot worse issues with Bulbagarden on loading things that aren't used... what with our fourth wiki that's been a cavern of echos for about six years now, and the multiple links that are preloaded just in case you decide to visit a given page.
 
My GIF has more than 256 colors. Does this middle ground exist for APNG?

True color. It's not as bad for coompression as you might think. If I open your 1.5MB original in VirtualDub, and re-save it as 32-bit, I get 558KB file. Pretty small, right?

Most of which is separate clunky Windows-only software or poorly-documented single-use command line tools.

Lots of software in general are Windows-only, so that's fine. "Clunky" is your subjective opinion, other people might disagree.

And command-line tools are still very useful in 21th century. That's how compilers (gcc, yasm) work, that's how video convertors (ffmpeg, mencoder) work. That allows other people to build a nice OS-specific GUI on top of them. Or you can create a long chain of tools to implement some unusual task, or automate a complex task.

I was kidding about MNG. Though ImageMagick/GraphicsMagick can read/write MNG and GIMP can write it, and have been able to do so for quite some time.

GIMP can only write them, and only on Linux. That's quite limited, don't you think? ImageMagick is command-line, and creates poorly-optimized MNG files. apngasm is command-line too, but it creates highly-optimized APNG files.

Compare them youself, on the same set of PNG frames, and I bet APNG will be smaller than MNG.

GIMP needs a plugin to do anything with APNG

Yes, but with that plugin it can load APNG too. And it works both on Linux and Windows.

An ad-hoc format invented for one vendor's UI...

Who cares who invented it? APNG is open, and simple to implement, nothing else matters.
 
Why all the Browser- and Format-war? Wouldn´t it just be the best to use the best format of those who can be seen by all browsers?
 
Why all the Browser- and Format-war? Wouldn´t it just be the best to use the best format of those who can be seen by all browsers?
There are upsides and downsides to browsers -- not all formats supported by one are supported by others. In fact, there are occasionally times where a format supported by one is not supported by any others.

But that's just which browsers support what, client-side only -- there's also the issue of server-side. Servers have bandwidth limits -- how much data can be transferred over a certain period of time? To help that, a few things have to be considered when it comes to image formats:
*Is the physical detail important?: Is the high resolution necessary to convey the reason this image is here? ("Does my picture of the ocean really require the unique information of the entire 3264x2448 pixel resolution that my camera took it in?" Or, conversely, "Can this picture be just as good with a bit of pixelation using .xyz format to make the filesize a lot smaller?")
*Is the color detail important?: Computer monitors can display 16,777,216 colours -- RGB #000000 through #FFFFFF, inclusive. How many of these colours are actually represented in the image? ("Does that picture of the ocean really need to render all of the reds and greens that the camera inevitably picked up?" Or, similary, "Is enough of the detail conserved when I approximate what the colours are by only using a smaller pallet when using .xyz format to make the filesize a lot smaller?")

Each individual file within the server's context can have a "best format" -- one which gives all the needed information in the smallest file. The problem, though, is that that format isn't necessarily the same for all files, and again, not all browsers can support all files.
 
^ In the case of the 256-colour Pokémon sprites, we could just use indexed-colour PNG's and be done with it ^_^
 
Size is not an issue with APNG, the example discussed early is justed compressed inefficiently. I could just as well build an arbitrarily huge GIF file if I wanted to.

What it comes down to is that the main competitors are APNG and GIF. Anything else is pretty much out of the picture since support for MNG and the likes is even worse than support for APNG, which is improving, by the way - I remember when all there was were Firefox plugins for APNG creation. Not to mention the fact that APNG is semi-backwards-compatible to PNG.

GIF's strong point is, obviously, support.
The overall superior format in terms of efficiency and features is APNG. Pick your poison.
 
There are certain uses for which APNG would clearly be the superior choice, but when dealing with sprites, which have a very small number of colours, there is no obvious advantage that I can see (kindly point it out if there is one, because I feel like I'm missing something here). With no clear advantage to either format, it should then come down to which has the greatest support, and that is clearly GIF.

The trouble is that whenever anybody asks why we insist on using APNG when many browsers don't, the response always comes up: "Well, IE sucks anyway". This attitude, especially when it comes from webmasters, is - and I shall choose my words carefully here - immature, unhelpful and counterproductive. I've designed websites myself, and I know how frustrating it can be, especially when it's some fiendishly complicated CSS issue where Microsoft has been blatantly ignoring standards. But this is a straight choice between a format that's supported by everything, and Mozilla's pet format. And we choose the second one because... um... IE sucks you guys! Get Firefox, lol!

Note that this doesn't even affect me: I'm an Opera user, and by some kind of dumb luck Opera supports APNG. If I was a Chrome user, I'd be out of luck. And I've encountered plenty of situations in the past when Opera doesn't parse some website feature correctly, and it turns out that the webmaster was only coding with Firefox in mind... which is exactly the sort of arrogance that IE users were once accused of.

See, I can recall a time, back in the IE vs Netscape browser wars, when Microsoft was heavily criticised for introducing support for features that weren't supported by competitors. And now we're using an unofficial feature supported by only two browsers, and apparently the reason Microsoft don't support it is that they're dumb. Oh, internet.
 
You're mostly right. I could understand why some high-profile websites are dumping IE6 support, it's below 10% now. The same with Opera. But ignoring IE7 and IE8 would be a little too much arrogance.

Practically, the best way would be to detect APNG support, and serve GIF/APNG accordingly.

But still, there are some use cases where using only GIF or only APNG would be better.

but when dealing with sprites, which have a very small number of colours, there is no obvious advantage that I can see (kindly point it out if there is one, because I feel like I'm missing something here).

Maybe you missed the link in my previous post?
 
Please note: The thread is from 14 years ago.
Please take the age of this thread into consideration in writing your reply. Depending on what exactly you wanted to say, you may want to consider if it would be better to post a new thread instead.
Back
Top Bottom