Graphviz Issue Tracker
Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0002183graphvizOutput Generationpublic2012-01-05 10:392012-01-19 13:56
Assigned Toellson 
PlatformOSOS Version
Summary0002183: Support webp image format
DescriptionWould it be possible to support Google's new webp image format for both input and output?
Additional InformationThis page describes the webp format and the cross-platform libwebp library: [^]
TagsNo tags attached.
FIX-COMMENTworks on fedora
Attached Filespng file icon abab.webp.png [^] (17,155 bytes) 2012-01-09 12:30

- Relationships

-  Notes
User avatar (0000148)
erg (administrator)
2012-01-05 10:49

Using the format for input should be no problem. We just need to add the hooks and code to read such files. Output is more of a problem in that we mostly rely on the cairo or gd libraries for image generation. I guess until it is natively supported, we could add a renderer that can take a cairo bitmap and emit webp.
User avatar (0000150)
ellson (administrator)
2012-01-05 11:34

I think the coding issues are solvable - we already have code to go from cairo to gd or devil images. i.e. we would still use cairo as the renderer, libwebp would just provide the device plugin.

I've been able to build libwebp locally from git, so the code development can proceed, but libwebp is not available yet in Fedora so this interface would not be included in our binary builds for now. Is it already available on Macs and/or Windows?
User avatar (0000155)
ellson (administrator)
2012-01-08 19:40

-Twebp output sort of works now. Its not enabled by default, you have to build from source with "./configure --with-webp". Also on fedora you have to first install your own copy of libwebp from git sources.

The output quality right now is fuzzy/noisy, I'm not sure why - I need to read more docs...

webp image loading is not completed yet.
User avatar (0000156)
ellson (administrator)
2012-01-08 20:56

The attached abab.webp.png shows a -Twebp image converted to png by dwebp.
The image looks smudged.
User avatar (0000159)
erg (administrator)
2012-01-09 11:52

I tried to check this on Leopard and Snow Leopard for the mac, using the macport version of libwebp. The Leopard version doesn't compile. The Snow Leopard version builds, but the plugin compile fails with

  CC gvdevice_webp.lo
gvdevice_webp.c: In function 'webp_format':
gvdevice_webp.c:58: error: 'WebPConfig' has no member named 'alpha_quality'
gvdevice_webp.c:60: error: 'WebPConfig' has no member named 'alpha_filtering'

I just downloaded the webp source and there don't appear to be any fields in WebPConfig in encode.h with the given names.
User avatar (0000160)
ellson (administrator)
2012-01-09 12:18

Ryan, For now please just comment-out those lines in plugin/webp/gvdevice_webp.c . I'm redundantly setting them to 0 now anyway.

I'm sure the underlying issue must be that I'm using a more recent libwebp from git.
User avatar (0000161)
ellson (administrator)
2012-01-09 12:19

Oops, its Emden thats testing ... sorry, and thanks :-)
User avatar (0000162)
ellson (administrator)
2012-01-09 12:27

made a change to not zero all config parameters - looks better now
User avatar (0000170)
ellson (administrator)
2012-01-19 13:55

Seems to work now, after linking with libpangocairo and fixing some color swapping.

- Issue History
Date Modified Username Field Change
2012-01-05 10:39 ryandesign New Issue
2012-01-05 10:49 erg Note Added: 0000148
2012-01-05 11:34 ellson Note Added: 0000150
2012-01-08 19:40 ellson Note Added: 0000155
2012-01-08 20:54 ellson File Added: abab.webp.png
2012-01-08 20:56 ellson Note Added: 0000156
2012-01-09 11:52 erg Note Added: 0000159
2012-01-09 12:18 ellson Note Added: 0000160
2012-01-09 12:19 ellson Note Added: 0000161
2012-01-09 12:27 ellson Note Added: 0000162
2012-01-09 12:28 ellson File Deleted: abab.webp.png
2012-01-09 12:30 ellson File Added: abab.webp.png
2012-01-19 13:55 ellson Note Added: 0000170
2012-01-19 13:56 ellson FIX-COMMENT => works on fedora
2012-01-19 13:56 ellson Status new => resolved
2012-01-19 13:56 ellson Resolution open => fixed
2012-01-19 13:56 ellson Assigned To => ellson

MantisBT 1.2.5[^]
Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker