GIF Slips Away From Unisys; Your Move, IBM 609
Twenty years ago, Terry Welch's improvement on Lempel-Ziv compression appeared in IEEE Computer magazine. The authors of unix 'compress' and the GIF standard incorporated that algorithm without realizing it was patent-pending. When the submarine patent surfaced ten years later, its new owner Unisys intimidated developers and web authors into moving away from GIFs, inspiring the creation of a better standard, though sadly still a less popular one. Today, July 7, 2004, Unisys's last LZW patent (in Canada) expires, leaving GIF once again free... almost. See, there's the small matter of IBM's patent, granted on the same algorithm, which is valid for another two years. That still has a chilling effect on GIF development, though the consensus seems to be that IBM would lose any court action it tried to bring. So how about it, IBM? You've got nothing to lose! Want to make a lot of geeks happy and release that final patent into the public domain?
Why do we need GIF anymore? (Score:5, Informative)
Re:If the poster is correct (Score:5, Informative)
Re:If the poster is correct (Score:5, Informative)
Sorry, botched the link (Score:2, Informative)
Re:If the poster is correct (Score:4, Informative)
"png" is found twice -- both of which are related to the original post.
Now you know why we care. The web community uses gif more than png. For better or worse...
Davak
Re:GIF sucks. Move on. (Score:5, Informative)
You're talking about an obsolete technology [GIF] that nobody cares about.
I'd question that. Check Google images [google.com] and see how many web sites still exclusively use .gifs. Not to mention a certain main-stream browser whose support for .pngs is still patchy.
I guess you and I have different definitions of "obsolete".
Re:PNG's..... (Score:5, Informative)
You can't make animations with PNG files....
Sure you can, only the result is called MNG [libpng.org].
Re:Why do we need GIF anymore? (Score:5, Informative)
Re:Why do we need GIF anymore? (Score:5, Informative)
Many people also believe PNG's to generally produce larger images to GIF, if youre generating PNG's using the 'recomended settings' then yes for many images this is the case, but if your image doesn't need 16.7 milion colors and full alpha-transparency, don't enable them switch to pallete based with no-transparnecy.
not even close! (Score:5, Informative)
Indeed, the web would be much more beautiful if IE supported alpha transparency in PNGs.
LZW tiff, too (Score:3, Informative)
Yeah, I know there are deflated TIFFs, but they can be like "wha...?" in the prepress world.
Re:This is cause for celebration. (Score:5, Informative)
Terry A. Welch, "A Technique for High Performance Data Compression", IEEE Computer, Vol. 17, No. 6, 1984, pp. 8-19.
If you don't want to go to a library and look that up, then Google will find you about 12000 hits on "Welch LZW", and the first few all seem to be exactly what you want.
Re:PNG's..... (Score:2, Informative)
Re:in any case (Score:2, Informative)
Re:Mod parent up! (Score:2, Informative)
Re:If the poster is correct (Score:3, Informative)
It's still superior to PNG's compression and I hazard a guess that PNG can be modified to use LZW.
Re:This is cause for celebration. (Score:5, Informative)
the algo is/was very widely known.
Re:What have they got to lose... (Score:2, Informative)
SCO v IBM - This Patent Is Being Actively Used (Score:5, Informative)
Actually that patent is being used in IBM's (second amended) counterclaims [groklaw.net] in the SCO v IBM case.
Re:in any case (Score:4, Informative)
Every once in a while somebody seems to open their mouth without realizing they have no clue what they are talking about.
How exactly is a transparent image bloat? I did a test. As a gif a logo I have is 3.32K without alpha and 3.33K with alpha. A PNG (both regular and alpha) it was 3.45K. That should dispel both the claims that PNG is bigger and that transparency adds bloat.
And what do you do everytime you change a websites background color? Change the image?
Re:This is cause for celebration. (Score:1, Informative)
Even the first link has info on the format, except that particular info is hard to read. I've seen better documets about the subject.
For just the plain LZW algorithm, try this
- Jeppe Jääkarhu
Re:If the poster is correct (Score:5, Informative)
Except from what I've understood... (Score:5, Informative)
I use PNG quite a bit, but mainly as a competitor to TIF files, but I do prefer to use PNG over GIF in websites too. However, I'm only using non-transparent, plain PNGs for maximum compatibility.
Animated GIFs? Oh, right. I turned those off, along with pop-ups. If I wanted that, I'd actually use flash or something like that. I figure either you don't block stuff (which means GIF + flash) or you block stuff, in which case you don't see either. Either way, I don't see much room for GIF files...
Kjella
IE can work with PNG (Score:4, Informative)
Re:What have they got to lose... (Score:2, Informative)
To reiterate, GIF is essentially lossless, but only in two conditions: The image is less than 256 colors raw, or the image was a gif originally (basically the same condition.) Now, PNG is also lossless, and while GIF is still the most common standard, Mozilla supports PNG well, and IE pretends to support it resulting in an okay method, meaning it doesn't have to remain standard. After all, [intentionally ridiculous analogy]the horse and buggy was once the standard for transportation.[/intentionally ridiculous analogy]
Re:SCO v IBM - This Patent Is Being Actively Used (Score:5, Informative)
While it would be nice for IBM to release the patent to the public domain, they would have to drop this particular claim from the SCO lawsuit if they did.
Re:If the poster is correct (Score:5, Informative)
Bob Berry, the developer of CompuShow for CompuServe (remember them - the people that invented the GIF format?) included with it an animated GIF89 format file that had a picture of him. It had a speach bubble with him saying:
Oh, incidentally, it's pronounced "JIF"
A quick google later and I've found a web site which has this, and other evidence that
http://www.olsenhome.com/gif/
Thanks for playing
Re:Why do we need GIF anymore? (Score:2, Informative)
Re:in any case (Score:5, Informative)
Re:If the poster is correct (Score:5, Informative)
This website [eae.net] will tell you how to turn it on. You can see it working on my website.
No idea why it's not on by default, but if it works...
Re:PNG's..... (Score:5, Informative)
When I led the process of drafting the PNG specification, GIF animation did not yet exist. Animation was not part of the original GIF specification. The GIF89a specification *did* offer a mechanism for including multiple images in a single file, and a very basic (but, in retrospect, effective) mechanism for replacing only a specified part of the preceding image. But whether this was supposed to be animation with a time component was never defined, and there was in fact no way to specify how long each frame was supposed to appear, probably because the real intent was to be able to compose a single final still image from many sections. Multiple image GIFs were a footnote to the GIF specification which hardly anybody used until Netscape stepped in.
Netscape's animated GIF format was a clever hack on top of this: they defined a new GIF chunk to specify the pause between frames.
Here's the kicker: Netscape was repeatedly invited to participate in the PNG design process. They had someone reading the list, I gather, but they never offered any suggestions or contributions. If they had, they would likely have been considered very seriously.
But instead, the first we heard of GIF animation was its public release in Netscape (2.0 beta, if I recall correctly). They could have contributed to the design of a PNG or MNG that did include animation and, by way of that compelling feature, would have been more likely to quickly replace GIF. But they didn't.
We (the PNG designers) did consider retrofitting animation into PNG when Netscape's animated GIF appeared. In fact, I lobbied for that at one point. Unfortunately we had already finalized the functional specification and there was no hope of reaching agreement on how to "jam in" the animation feature at the last minute on top of an otherwise pretty elegant image format.
Instead, the MNG group was formed to create a specification for a powerful lossless animation format. And they succeeded -- but MNG has yet to really catch fire, and animated vector formats like SWF and SVG are gradually replacing animated GIF anyway for most purposes. At the end of the day, lossless bitmap animation is a pretty bandwidth-intensive proposition.
Re:Am I missing something? (Score:3, Informative)
Re:PNG (Score:5, Informative)
Re:PNG vs. JPEG (Score:5, Informative)
Also: make sure your PNG encoder is configured correctly. In most cases you want to be using the 'adaptive' filter.
Re:Alpha-Transparency (Score:3, Informative)
Or, actually, what GIFs have is transparency, whereas PNGs have an alpha channel, which allows for the specification of translucency - or opacity which is the opposite quality.
Re:not even close! (Score:4, Informative)
Because when you're working on a corporate project that costs money, it's very difficult to put a business case forward for something which will only be of benefit to a very small number of visitors.
Most clients would rather pay for something that directly benefits the browsing experience of the other 95%.
How to use Alpha-transparency (Score:3, Informative)
In some limited circumstances it's possible to use alpha-transparency while gracefully degrading in IE.
For example, if you are using a solid-colour or almost-solid-colour partially-transparent image to achieve some kind of shading or tinting of the underlying background, you can do this and let IE display it as solid rather than transparent. People who only use IE will never know it was meant to be transparent and thus won't care.
The major trip-up here is that IE renders alpha-transparent PNG onto an unpredictable background colour. However, you can bypass this by adding a background colour chunk (bKGD, or something like that; it's been a while) specifying which solid colour you wish IE to render to. It will then render to that color and create the image with that color "showing through".
The limitations of IE's rendering are due to how IE was originally built to handle images. The image loaders hand the rendering component some kind of bitmap and a 1-bit transparency mask. This was a good choice at the time, but then alpha-transparent PNG came along, and since at the time GDI didn't have any mechanism to support alpha-transparency they just bodged it with the background color. At the time it didn't matter because no-one was using PNG anyway.
The new version of IE will hopefully support alpha-transparency since as of Windows 2000 GDI supports 32-bit images with (alpha,r,g,b) components, and there's already a PNG loader in the gdiplus library, so supporting it will be pretty trivial.
Re:PNG vs. JPEG (Score:5, Informative)
JPEG, like MPEG (and Vorbis, Theora,
PNG images, on the other hand, encode the image exactly as it looks. Basically, a PNG image is a collection of pixels, some metadata, optionally compressed with deflate (same algorithm used by gzip).
JPEG images are the better choice for photograpic images (which is what they are intended for), where the exact pixel colors don't matter that much. PNG is better for line drawings, text, high contrast images; basically anything that doesn't bear slight changes to the colors. For large images, JPEG can be significantly smaller, making the case for using JPEG for screen dumps and such.
Re:Why do we need GIF anymore? (Score:5, Informative)
1. Blending with any background means you can change the background globally and not worry about re-blending all of the images.
2. An image which is produced externally (e.g. by a partner) can blend with your layout cleanly without being customized.
However, MOST uses of alpha blending in web design would ACTUALLY be better done in SVG if SVG in browsers could finally get first-class status.
Why? Well, just for starters, LCDs and CRTs have different optimial anti-aliasing strategies. If I want to put a circle on a Web page, right now I have to choose one of those strategies ahead of time (or resort to a plug-in). If we allow SVG "images", then we can simply render that circle however the user directs it to be (presumably because they've selected a "CRT-friendly" or "LCD-friendly" preference in their browser or desktop).
Once you eliminate anti-aliasing as a concern, there are still reasons to do alpha-blending in regular images (such as those above), but the general case (logos, text, shapes, etc) will be handled more cleanly.
MNGs (Animated PNGs) and Mozilla (Score:5, Informative)
If you would like to get MNG back into Mozilla, then you can follow/vote/contribute to Bugzilla bug 18574
http://bugzilla.mozilla.org/show_bug.cgi?id=1857 4
(Please don't post useless comments on that bug)
Re:LZW is USEFUL and NON-OBVIOUS (Score:3, Informative)
Re:The other patent should constitute prior art (Score:3, Informative)
1) Until recently, the US didn't publish the applications, only the granted patents, and the lifetime of the patent was from date or grant, not date of filing. There was the tendancy for the applicants not to bother rushing things through. (dare I say submarining).
Note that elsewhere, patent applications became public after, IIRC, 18 months and their lifetime started from the date of filing - there was no point in being tardy.
2) I suspect that, back then, searching existing patents was probably a lot more difficult. It wouldn't surprise me if it was all done manually which'd be utterly tedious. It's bad enough with online electronic systems.
3)It is the responsibility of the patenter to inform the patent office if new information/documents comes to light and to update their patents accordingly (I've done this with one of mine) but I guess researchers can move on to other fields, change employers, or simply lose interest. (shrug)
Re:oh well.... (Score:2, Informative)
Re:This is cause for celebration. (Score:1, Informative)
Re:If the poster is correct (Score:1, Informative)
The plugin is 200K. Flash movies are typically smaller than a single image. You can rant all you want about flash, but I don't think you can call it bloated.
Re:not even close! (Score:2, Informative)
Well you have to promote them fully. Alpha transparency works fine in IE 5.5+, you just have to know the hack. See this site [sectormedical.com] for a working example.
The method is explained here [eae.net]
Re:Purpose of patents? (Score:3, Informative)
Actually, you cannot (legally) use a patented technology without permission from the patent holder, even if you don't make money from it.
Re:If the poster is correct (Score:3, Informative)
i'm not sure this web community would be pleased that slashdot's being used as an example of currently-accepted design choices. at least on the front end, slashdot's code is dated and inefficient. alistapart.com has a fun article [alistapart.com] on how it could be made better.
Re:If the poster is correct (Score:3, Informative)
also, png's will almost always be smaller if optipng is used to optimize the compression
Re:If the poster is correct (Score:3, Informative)
Oh wait.
I forgot all of the morons who leave it on.
My Mistake. Guess it will work after all.
this is me going off topic (Score:4, Informative)
Actually, the majority do rule on matters of pronounciation when it comes to English. The major linguistic project of English (the Oxford English Dictionary) is a descriptive not a prescriptive document. That means that once a significant minority of English users use or pronounce a word in a certain way, it'll get recorded in the dictionary.
All this is just to say that both "jif" and "gif" are acceptable pronounciations of GIF.
It does, you just have to work at it (Score:2, Informative)
<div style =" width: 36px; height: 52px; filter: progid:DXImageTransform.Microsoft.AlphaImageLoade
This doesn't interfere with other browsers which support PNG natively because they just see the standard IMG tag and ignore the filter stuff. Whereas on IE, the filter in the IMG tag prevents the (wrong) image from being displayed, and the one in the DIV tag actually does display it properly. Goodness knows why they make you jump through the hoops though; given the IE on MacOS just works, it's obvious that Microsoft as a company don't have a problem with understanding or implementing the specs. Do they just not share code between platforms in Redmond, or what?
How to force IE to do PNG Alpha properly (Score:3, Informative)
Works like a charm, doesn't introduce any MS "extensions" into your documents, and doesn't do anything if the user is smart enough to be using a web browser that actually supports standards.
Re:not even close! (Score:3, Informative)
FWIW, there's a hack to display transparent PNGs in IE without breaking things for other browsers. Try this script:
I inserted a few extra spaces so that /. would hopefully not mangle it into non-working form, but if it doesn't work, you can get a working copy of the script here [alfter.us].
Where you'd normally put an IMG element to load a PNG, use something like this instead:
<span id="foo">
<img src="graphics/foo.png" width=320 height=240 alt="This is the Foo image" title="This is the Foo image">
</span>
<script type="text/javascript">
DisplayPNG("foo","graphics/foo.png",320,240,"This is the Foo image");
</script>
The first parameter of the DisplayPNG script is the ID of the span element that precedes it; this displays the PNG if JavaScript is disabled (though it won't be transparent on IE). The second parameter is the path to the file, the third and fourth are the dimensions, and the fifth is some identifying text that'll show up in the image's tooltip.
I'll allow that it would be better if Microsoft had done a proper implementation of PNG in IE, but this gets the job done until that happens (if it ever does).
Getting alpha transparency to work in IE (Score:4, Informative)
Re:Patents are still ineffective (Score:3, Informative)
If you're smart enough to come up with the next great compression algoritm, I encourage you to do so!
You are allowed to selectively enforce patents (Score:1, Informative)
Re:PNG (Score:1, Informative)
Those are server-side technologies, bub (Score:3, Informative)
A little opinionated there, lol (Score:3, Informative)
Re:PNG vs. JPEG (Score:3, Informative)
The question is, why not use JPEG if it results in smaller files and no visible artifacts? I think the answer to that question is, there IS no reason not to. If the compression fits your application, use it. Don't make decisions based on generalizations and textbook answers.
Will there be artifacts? Perhaps. But what is relevant, of course, is whether they are perceptible, and beyond that, whether they are distracting.
Don't just blindly follow rules of thumb. Do a real experiment, like the OP's colleague did. If a certain type of compression works best in your application, then use it. Don't discard options based on theory, especially when direct experience contradicts it.
Oh, and a small nitpick: PNG is not optionally compressed. The compression is mandatory.
Full-Alpha PNG in IE without changing all IMG tags (Score:2, Informative)
Re:Indeed they do. (Score:3, Informative)
Failing to do so voids your patent.
At least, I'm almost certain that is how it works here in Australia.