Slashdot Mirror


Apple Patent Blocking PNG Development

Daniel writes: "Apple has a patent (U.S. Patent No. 5,379,129) on compositing a source and destination image using a mask image. This patent appears to read on alpha channel transparency, which the PNG and MNG file formats use. APPLE has declared in their patent statement to the Scalable Vector Graphics Working Group that their patent is only available for RAND Licensing. Since this patent appears to read on the PNG file format, Apple is hampering work on the PNG and MNG file formats. Perhaps Apple would like to clarify this situation by explicitly stating that this patent does not cover the PNG and MNG file formats or by RF Licensing their patent to the PNG and MNG development groups. Alternatively, the PNG and MNG developers are asking people to submit prior art in order to invalidate Apple's patent. SGI in particular appears to have prior art with their 'blendfunction.' Make sure the prior art you submit is older than May 08, 1992, the filing date of Apple's patent."

23 of 357 comments (clear)

  1. Prior art? Yeah, here's some prior art. by Ryu2 · · Score: 5, Informative

    Try Porter and Duff's paper published in 1984 introducing image composition that started it all!!!!

    --
    There's 10 types of people in this world, those who understand binary and those who don't.
  2. Re:1992? by mosha · · Score: 2, Informative

    > I'm pretty sure I was looking at that call in 1991, and maybe even 1990. Is 1992 the filing date, or the date they claim invention

    The patent law allows one year since the date of public disclosure until the patent is filed. Therefore if you were looking at it in 1991 and they filed patent in 1992, they are still OK.

  3. Obvious and WAY older than 1992 by spitzak · · Score: 5, Informative
    I have a book printed in 1990 (Foley & van Dam Computer Graphics Principles and Practice, first edition), the references papers that talk about it.

    Every program that combines images and works with true color uses this. It is impossible not to, the algorithim is totally obvious. True color images (ie where the numbers represent levels of red, green, blue, rather than be indexes into a color pallette) were in common use in advanced visualization and simulations in 1980, such as Evans & Sutherland flight simulators. I also saw photo touch-up software that could duplicate a portion of the image and put it somewhere else in 1979, and I believe it must have used this, as otherwise the edges of the cut piece would be visible.

    PORT84, Porter, T., and T.Duff, "Compositing Digital Images," SIGGRAPH 84, 253-259.

    This is the paper most-often cited, however I think it's main addition is the enumeration of compositing operators and the introduction of "premultiplied" images. Before that I believe non-premultiplied was used as that was the more obvious solution. Also PNG does not use premulitplication.

    Even if Apple is going to be a pita about this, it does not affect PNG, as the file format itself does not do any compositing, it just stores a 4th "color" called the alpha. So I would not worry about it there. However Photoshop and Gimp and the in-house program I write for Digital Domain uses this, and about six thousand other pieces of commercial and free software.

    1. Re:Obvious and WAY older than 1992 by KFury · · Score: 4, Informative

      "Even if Apple is going to be a pita about this, it does not affect PNG, as the file format itself does not do any compositing, it just stores a 4th "color" called the alpha. So I would not worry about it there."

      PNG isn't just a file format. It's an encoding and decoding mechanism. The encoding and decoding treat the alpha channel as an alpha channel, not a 'fourth color'.

  4. standard textbook technique by mj6798 · · Score: 3, Informative
    Alpha compositing is in Foley and van Dam's second edition (1990, p835-840), and it is almost certainly also in the first edition, which I don't even have anymore. My guess is that people came up with this some time in the 1960's. Foley and van Dam even talk about subpixel issues and tree-based representations in compositing. Not that any of this shouldn't be obvious to any reasonably intelligent CS undegraduate anyway.

    I think this leaves only two possible conclusions: either Apple's legal staff and the inventors, Konstantin Othmer and Bruce Leak, are completely incompetent, or the inventors deliberately tried to patent a technique they knew to be in wide use and Apple's legal staff is deliberately trying to enforce an invalid patent. Apple didn't even have the smarts to offer this patent for "royalty free" licensing to SVG.

    Forget about any of Apple's claims of openness: this is such a clear case of patent abuse that it can't be an accident or mistake. The open source community would do well to stonewall Apple: don't incorporate OSX-related patches into open source projects, don't port to their hardware, and don't buy their products.

    1. Re:standard textbook technique by Pseudonym · · Score: 3, Informative

      The technique doesn't date back to the 1960s. Alvy Ray Smith, who claims the technique's co-invention with Ed Catmull (who were both working at Lucasfilm at the time), says the earliest date on his alpha channel code is January 1978, but the technique was probably actually invented the previous December. (He has good reason for saying this, BTW. Final copy for Ed Catmull's 1978 SIGGRAPH paper was due in January, and the code in question was used to produce some of the figures.)

      Still well before 1992, of course.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  5. Re:PNG Open Source Masturbation by Anonymous Coward · · Score: 1, Informative


    OK - let's compare features:

    GIF: 1 bit alpha (ie On or Off)
    PNG: Up to 8 bit Alpha (ie antialiased edges, semi-translucent images, etc)

    GIF: 8 bits per pixel of colour (severe image
    banding for subtle gradations - inability to match important colours - no pantone possibilities).
    PNG: (at least) 8, 16, 24 bits per pixel (cheaper than GIF all the way up to better-than-your-eye-can-resolve).

    GIF: Animation.
    PNG: ...well...you gotta use MNG (yuk - this was a poor decision IMHO)

    GIF: Fast preview by interlaced download.
    PNG: Even faster preview by much more complicated
    pixel ordering scheme.

    I think PNG wins hands down. The *only* feature
    they missed was 'lossy' compression a'la JPEG...and GIF can't do that either.

    TIFF is virtually unusable due to wild
    proliferation of tags - TIFF images don't
    port well from one tool to another.

  6. Obligatory link to the patent in question by bjk4 · · Score: 5, Informative
    Patent 5,379,129

    CLick the "Image" button to see the lovely diagrams. There are a few items this patent does NOT cover, as explicitely mentioned in the text. This patent does not cover additional channel information, like alpha channels. It only covers a seperate, full color, mask image that is used to mask off the source image.

    I have a few questions:
    • The patent mentions that a black pixel codes for source image. Does this mean that if I decide the opposite, I can avoid royalties?
    • The patent mentions it uses full color mask images. Is a greyscale or black + white image considered a full color image?


    If the patent does not cover greyscale images, then not all sanity is lost!

    -B
  7. Prior Art by corebreech · · Score: 5, Informative

    From the Second Edition of "Principles of Interactive Computer Graphics", by William M. Newman published by McGraw-Hill in 1979:

    We find on page 222 the pseudocode for the WriteColor procedure:

    procedure WriteColor(var ColorRaster: raster; x, y: integer);
    var i, j: integer;
    begin
    for j := ColorRaster.ymin to ColorRaster.ymax - 1 do
    for i := ColorRaster.xmin to ColorRaster.xmax - 1 do
    if GetPixel(ColorRaster, i, j) <> transparent then
    SetPixel(FrameBuffer, x+i, y+j, GetPixel(ColorRaster, i, j))
    end;

    And there was a First Edition published in 1973, for all I know it's in there too.

    BTW, there isn't anything Bill Atkinson did for Apple in QuickDraw that isn't spelled out in this book.

    1. Re:Prior Art by Dominic_Mazzoni · · Score: 3, Informative
      We find on page 222 the pseudocode for the WriteColor procedure:

      Ummmm, the algorithm that Apple patented is more complicated than that WriteColor procedure. WriteColor draws an image with _one_ level of transparency - i.e. each pixel is either completely transparent or completely opaque. Apple's algorithm is for how to draw an image where each pixel can be partially transparent - anywhere from 0 (totally transparent) to 255 (totally opaque).

      That's not to say that Apple's algorithm isn't completely obvious - and I'm sure there's prior art out there, but you'll have to look a little harder.

      BTW, there isn't anything Bill Atkinson did for Apple in QuickDraw that isn't spelled out in this book.

      How about making it really fast??? I'm still incredibly impressed with the amount of graphics power they got out of that original 8 MHz computer. Did you realize that even back in 1984, the Mac screen had rounded corners - and any drawing that took place on the screen was automatically clipped to those rounded corners? That's not exactly trivial to implement without a significant performance penalty.

    2. Re:Prior Art by corebreech · · Score: 2, Informative

      Ummmm, the algorithm that Apple patented is more complicated than that WriteColor procedure.

      Ummmm, no. There are essentially two algorithms that Apple has patented here. The pseudocode given above applies to the first. RTFP.

      How about making it really fast??? ... Did you realize that even back in 1984, the Mac screen had rounded corners - and any drawing that took place on the screen was automatically clipped to those rounded corners?

      Get the book. It's called "Principles of Interactive Computer Graphics." It's published by McGraw-Hill. It tells you how to do this. Basically, Apple rechristened the rasterized-masking system talked about in the book as something called a Region (esp. RgnHandle.) It's really nothing more than a run-length-encoded bit mask.

      It lets you draw things with rounded corners really fast.

  8. Alvy Ray Smith by Pseudonym · · Score: 3, Informative

    The definitive reference on the history of alpha is Alvy Ray Smith's technical memo from 1995. It seems pretty clear that he co-invented the technique with Ed Catmull as a solution to a problem that Catmull was having with his sub-pixel hidden surface algorithm.

    The earliest dated documentation on his alpha channel code is January 13, 1978, although it was probably written the previous December. See footnote 4, page 6 of the memo for details.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  9. Selective memory? by SuperKendall · · Score: 3, Informative

    You seen to forget:

    HP, Apple Drop Support for Royalties on Web Standards

    Don't you think that is HELPFUL?

    I personally think it's rather odd they would state they do not support RAND, then say you have to use RAND for this standard... something is wrong here.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  10. Re:Time for an Apple boycot!? by sporty · · Score: 5, Informative
    Talk about FUD. Suing over interfaces has been known for a long time. I know 2 companies on the web battling it out right now just because they are competitors but one has a patent. Look at MS vs Apple, Apple vs Xerox (I swear there was a case). Don't make something so general so specific.


    Also think of the confussion it causes when two products look identical. It should let the opensource community do this and not allow companies to do it? What's the insentive?


    As for the one-click thing, please. They debuted one-click, so what. They are using, or at least were, using a technology. Don't pick on their website just 'cause they licensed a technology from another company that has a patent on it. What's cheaper, lisencing or going to court? Pick on Amazon for creating such a stupid patent.

    And as for the cube-NDA contract issue, please. Gimme a friggin' break. So what if Apple likes to hide their new products until they are ready to do it the way they want. The employee signed a contract that he won't leak information from Apple. What if a competitor such as Dell caught wind and released something just as cool, but earlier. Great, Apple would get shafted 'cause of some ass employee who can't play nice.


    As for the BSD crack you made, they are using opensource software and giving back the modified version, Darwin for free. Don't be an ingrate and say "Well, a patent (mind you invalid) exists, they get people to stop mimicing their interface verbatim, use OSS and recontribute while making their OS even more stable than before, so apple reeks." statement. Maybe we should step all over Apple and hack QuickTime, which uses a kick ass codec and try our best to drive the company into the ground.


    You've just spread extreemist FUD about a company protecting its rights. piss me off...

    --

    -
    ping -f 255.255.255.255 # if only

  11. Actually, it IS a Web standard. by Svartalf · · Score: 3, Informative

    http://www.w3.org/Graphics/PNG/ is the page on the W3C's site on the subject.

    --
    I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
  12. Re:FUD? by Zo0ok · · Score: 3, Informative
    the next 75 years or however long patents last

    A patent is valid at most 20 years from the time being filed in the first place (1992 + 20 years). A renewal fee is required every year.

  13. Read your own links. by poemofatic · · Score: 3, Informative

    from the W3C Patent statement summary:

    [snip]
    Apple informed the SVG 1.0 Working Group very early in the SVG 1.0 process of the patent they listed in their license statement. The SVG Working Group made a concerted effort to produce a specification that does not require implementors to infringe the patent.

    [snip]

    Member Name -/-Patent Claim -/- License ...
    Adobe -- None -- Royalty-Free --
    Apple -- Patent: US 5379129 -- RAND --

    uh, you are aware that this story is about Apple, and not Adobe, right?


    --

    When in doubt, have a man come through a door with a gun in his hand.

  14. Re:Outdated, irrelevant facts w/o more info by AbsoluteRelativity · · Score: 2, Informative

    Ah crap, (I cant believe how retarded slashdot is, I did it to fast and it said the "slow down cowboy" BS, when I backed up my text was gone, so I repasted but forget to correct it, grrrr)

    http://lists.w3.org/Archives/Public/www-patentpoli cy-comment/2001Sep/0734.html

    --
    disclaimer : My views do not represent those of every one else in slashdot.
  15. Commodore 64 sprites by kkovacs · · Score: 2, Informative

    Do you think the Commodore 64's sprite handling is prior enough? The idea was the same. And it was released MUCH before 1992.

  16. Now this is just silly by Sycraft-fu · · Score: 5, Informative

    As other posters have mentioned:

    1) This is obvious.

    2) There is prior art.

    So even if Apple decided to try and enforce it, it'd get shot down however:

    3) Apple has already allowed royalty free use of this patent.

    Seriously folks, this story is just silly. Think for a moment how many things out there use multi level alpha transparency. All 3d cards from the Voodoo on do, Windows does in movie file formats and in the UI in XP, a bunch of X WMs do. If Apple tried to enforce this they'd have legal teams from all over after them, fact aside that they've already said they won't.

    Just because a company has a stupid patent doesn't mean they will try and enforce it.

  17. Only applies to triple alpha channels by BitwizeGHC · · Score: 4, Informative

    The patent only applies to triple alpha channels, i.e., where the alpha channel is itself an RGB value, and the source and destination images are blended channel by channel according to the RGB values in the triple alpha channel.

    It seems like an obvious extension of alpha blending (which was around for a while and is referenced in the patent) but that didn't stop Apple. HURR! WE R SMRT!

    --
    N4st0r, trixx0r h0bb1tz0rz! Th3y st0l3 0ur pr3c10uzz!
  18. Re:FUD? by mav[LAG] · · Score: 5, Informative

    There is nothing colossally more wrong with being able to patent software than there is with patenting hardware.

    There's a huge difference between software innovation and hardware innovation. Software innovation is sequential and complementary. Software development is not a zero sum game. Developers have always used the work of others to build, improve and enhance functionality. In the open source and Free Software worlds, this works through availability of source and the distribution licenses. In the commercial worlds, it works through user groups, conferences and special interest Web sites (like this one) where people can share ideas and code.

    If I make a living by it why should I spend time developing software if I can not protect my self from people ripping me off???

    Be my guest. Discover a new algorithm without any access to the work of others (I'd be impressed with that straight away) and then patent it. Oops. Is it too expensive? Darn. It seems only the big companies can afford to patent XORing a bitmap with the background to achieve transparency, something I thought up independently when I was 12. And are they protecting themselves from others ripping off this "innovation". Nope - they use patents for attack, not defence. So smaller developers can't write software even when protected by the patent system.

    If a commercial software developer comes up with a clever way of coding something he has a right to patent it like any other inventor.

    This is a great idea - in theory. The problem is that there are no "clever ways of coding something" which don't boil down to techniques which have been used for years: linked lists, hash tables, look up tables, mathematical operations, bitwise operations and basic algorithms used on basic data structures. It's easy to check this too - pick any software patent held by say IBM, get it translated into English or pseudocode and it will be a trivial operation. Guaranteed.

    Open source organizations will have to live with the fact that if some technology is patented by a commercial organization they can not use it free of charge and without permission.

    Do you mean technology or software specifically? If software, then commercial organisations should not be using free or open source software at all. Come to think of it, they shouldn't be using the Internet either.

    Pay up or bugger off that is the rule of the game. What Open source organizations can do is either come up with alternatives and/or they can stop whining about patents and try to beat Commercial organizations at their own game by patenting software them selves.

    Software innovation doesn't happen when development is hampered by a mass of patents. In the non-software worlds, the inventor needs to recoup his costs and thus I can see the need for a limited time of protection. But in software, all that happens is those that can afford to hold patents use them as a weapon against those that can't. And very few true innovations happen in large patent-holding companies. It's the garage operations, the one or two guys in their back rooms who come up with new stuff all the time.
    And why should non-US programmers pay license fees to someone like IBM in the US? What gives them the right to tell me whether I can or can't write software in a country 10 000 miles away?

    --
    --- Hot Shot City is particularly good.
  19. It is specifically not alpha blending. by Nindalf · · Score: 4, Informative
    From the patent:
    Compositing can also be used to "blend" two images by controlling the degree to which the two images are merged or averaged. This is often done by a method called "alpha channel blending" in which an 8 bit alpha channel controls the blending of two 32 bit RGB images.

    However, while these methods have been useful, they are quite rigid and inflexible in accommodating images of various colors and bit depths[...]


    Alpha blending is directly contrasted to their method in the patent itself. This is no threat to the patent-free status of PNG or MNG.