usnistgov / h5wasm

A WebAssembly HDF5 reader/writer library
Other
83 stars 12 forks source link

Support for GRIB files #39

Open blaylockbk opened 1 year ago

blaylockbk commented 1 year ago

Thanks for this wonderful tool; The VS Code extension h5web that uses h5wasm is super handy.

I know GRIB files are a completely different data format, but there are conversion tools to convert GRIB2 to NetCDF4. I wondered if it were possible to extend h5wasm to support GRIB2 files, either reading GRIB2 files directly, or converting them to HDF5 before reading them.

Thanks for considering this idea.

bmaranville commented 1 year ago

I don't know GRIB files - can you give me a reference for where to get more information on them?

blaylockbk commented 1 year ago

Sure thing. GRIB2 stands for "Gridded Binary version 2" and is a standard used in the meteorology community for numerical weather prediction. Here are some references on ECMWF's tool called eccodes:

GRIB2 data from NOAA's weather models are disseminated from sources like NOMADS.

bmaranville commented 1 year ago

There doesn't seem to be a canonical transformation from GRIB2 to HDF5 - the tools that exist seem to offer flexibility and options and that's hard to offer in an automated way. The GRIB2 format itself seems pretty straightforward, and it would be nice to read that directly rather than going through HDF5, but I realize that's a whole other project.

Also the tools I was able to find for GRIB seem to often depend on fortran codes or mixed codebases, and that might make it hard to compile them through Emscripten to run in the browser - don't have experience with such things and have only tried to compile C or C++ with Emscripten (like the HDF5 library).