[gdal-dev] Introducing the cogger and godal projects

thomas bonfort thomas.bonfort at gmail.com
Fri Jun 4 03:07:18 PDT 2021


Hello gdal,

We're releasing two projects on github under an Apache-2.0 licence
which may be of interest to the GDAL community.

The first one, https://github.com/airbusgeo/cogger is a lightweight
geotiff to COG converter that reshuffles the bytes of a tiled geotiff
to make it cloud compatible. Whereas it does not replace the standard
gdal tools for initially creating a geotiff, it is much faster than
the last "-co COPY_SRC_OVERVIEWS=YES" classical gdal_translate method
for outputting a cog, and also allows more flexibility when varying
compression methods or tile sizes need to applied on overviews. Cogger
can be used as a standalone command line tool, or as a go library
function for interacting with remote storage without the need for
local files.

The second one, https://github.com/airbusgeo/godal is a golang wrapper
for GDAL's raster api. While there is an already established golang
wrapper for gdal that exists (https://github.com/lukeroth/gdal), godal
differs by offering:
- robust error handling and reporting
- a stable compatible api promise (to the extent of what is possible
to achieve given gdal's own api)
- a vsi abstraction that hands off i/o to native golang code
- a more user-friendly API that is not an exact mirror of the gdal
api, making lesser used functionality optional. (For example, instead
of the GDALOpen, GDALOpenEx and GDALOpenShared methods, godal exposes
a single Open() method with optional arguments validated at compile
time to pass in open options, shared mode, sibling files, etc...)
Although the raster handling side of godal is mostly feature complete
with gdal, the vector and spatial-referencing part is not.

Outside contributions to both these projects are welcome through github.

Best regards,
Thomas


More information about the gdal-dev mailing list