[cairo] filters/image processing

MenTaLguY mental at rydia.net
Mon Sep 4 08:11:06 PDT 2006


On Sun, 2006-09-03 at 19:14 -0700, Vladimir Vukicevic wrote:
> I should add this... I think that looking at SVG for anything other
> than exqamples is not useful for cairo; cairo is not trying to be the
> end-all be-all SVG renderer, but instead to be a useful 2D rendering
> API/library.  We can get ideas about what the possibilities are from
> SVG, but "implementing SVG filters" is not useful as the only (and
> main) goal.

This is, incidentally, why both Keith and I want something more general
than pre-baked SVG filters if cairo is to provide an API for this sort
of thing at all.  In principle I'm fine with a GLSL shader-only solution
(GLSL is not a huge language, it's not totally unrealistic to do our own
GLSL software implementation, and there's no point in inventing our own
cairo-specific shader language), though in practice I think that's too
much implementation effort up-front.

Anyway, the big problem with doing filter-type stuff outside of Cairo is
that then you take a significant hit because you have to blit from the
Cairo surface to a working surface, do your work, and then blit back
again.  That can be terribly expensive, and rather defeats the point of
hardware accelerating filters in the first place.

(Of course, you can always use the cairo image surface, but then you
don't get hardware-accelerated Cairo...)

Actually, if we can solve the blitting issue I won't care so much if I
have to do filters outside of cairo.

-mental
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
Url : http://lists.freedesktop.org/archives/cairo/attachments/20060904/61b6f6d6/attachment.pgp


More information about the cairo mailing list