[maemo-developers] [maemo-developers] 2D Library, Vector Library or similar.
From: Carl Worth cworth at cworth.orgDate: Wed Nov 22 18:35:47 EET 2006
- Previous message: [maemo-developers] 2D Library, Vector Library or similar.
- Next message: [maemo-developers] 2D Library, Vector Library or similar.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Wed, 22 Nov 2006 12:54:54 +0000, "Martin Guy" wrote: > > In another thread, about gnash, they mentioned moving to agg for its > > lightweightness. How do these two compare? Eg. do you think they could > > have moved to cairo as well? ... > To be fair, cairo's site says that now that they have the > functionality they are working on speed, but at present AGG wins hands > down. There was a Summer of Code project this year (for Mozilla) in which someone implemented a new backend for cairo that's implemented with AGG. They were hoping it would be a lot faster than cairo's image backend, but so far it hasn't appeared to make a huge difference. We are currently in the process of improving cairo's performance, and we're putting out new snapshots every week or two. For example, you can see some n770 performance numbers for our latest snapshot here: http://lists.freedesktop.org/archives/cairo-announce/2006-November/000053.html As AGG is all software, I fully expect that we will be able to get cairo to take advantage of any algorithm techniques it is using so that cairo's software backend is just as fast. I'm planning for that work to be in place by the cairo 1.4 release planned for January 2007. Meanwhile, cairo has an architecture that isn't restricted to just software. So if a platform has some video acceleration capabilities, (made accessible through the X Render extension or OpenGL), then cairo-using applications can take advantage of that by changing only the surface-creation code, (which selects which of cairo's backends to use), and not any rendering code. Finally, a primary design goal of cairo has been to provide an easy-to-learn and fun-to-use API. I think we've been largely successful on that. AGG has taken a very different approach, where as a design goal Maxim has not written any API at all. Instead, AGG provides a collection of different algorithms that one can piece together to form a rendering pipeline. This provides an awful lot of flexibility, but at some cost in ease of use. I hope that's helpful. When reading the above, please filter out my bias as a primary author and maintainer of cairo if possible. -Carl PS. As a final note, there are licensing differences. Cairo is available under simultaneous LGPL and MPL licenses. Previous versions of AGG where available under a liberal (MIT-like) license, but the most recent version is available under the GPL, (though the change wasn't announced on the mailing list and there is some confusion there from users as to what the motivation for the change was). -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://lists.maemo.org/pipermail/maemo-developers/attachments/20061122/ae70114f/attachment.pgp
- Previous message: [maemo-developers] 2D Library, Vector Library or similar.
- Next message: [maemo-developers] 2D Library, Vector Library or similar.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]