[gdal-dev] BPG driver

Jukka Rahkonen jukka.rahkonen at maanmittauslaitos.fi
Wed Jan 28 06:28:06 PST 2015


Even Rouault <even.rouault <at> spatialys.com> writes:

> 
> Hi,
> 
> For those interested, I've committed an experimental (*) read-only BPG
(Better 
> Portable Graphics) driver to read the new image format created by Fabrice 
> Bellard based on HEVC : http://bellard.org/bpg/
> For same quality as JPEG, images are typically twice smaller. Competitor of 
> WebP as well, with apparently slightly better quality.
> Rather as dealing with standalone images, it could be interested as a
codec in 
> TIFF for example to benefit from tiling, overviews, etc. Or a GeoPackage tile 
> format extension.

Hi,

Extremely interesting for all that you mention. By quick reading I got an
impression that it might be 10 times slower in compression and 2-3 times
slower in decompression compared to some video codec.

I have no idea about how fast it is to use H.264 codec so I planned to make
a quick test with jpeg with my own images by using bpgenc.exe which I found
from http://bellard.org/bpg/bpg-0.9.5-win32.zip. With a 19200x19200 sized
image it just crashes but I could compress a 3455x3954 sized png. I can
confirm that compression is very slow.

My topographic map shrink from 475 kb (.png) into 340 kb (.bpg) which is
pretty good (-30%) because the original image suits very well for png
compression. As a comparison, gdal_translate made a 676 kb jpeg image with
the default settings. Remember that this number does not mean anything
because the original just does not suit for jpeg.

I believe that with GDAL the bpg format would be used with at max. 1024x1024
sized tiles so my tests are probably not worth much value but it feels like
reasonable savings in bandwidth could be achieved at rather high cost in CPU
usage. Users of tile services and offline maps should be interested but
without hardware acceleration bpg could be slow for WMS. However, chips for
hardware HEVC compression are already available so it is only upon someone
writing code and make GDAL to utilize such things. Hardware accelerated
MapServer for fast and small delivery, mmmm, it tastes good.



-Jukka Rahkonen-




More information about the gdal-dev mailing list