# nvtiff-sys
[](https://crates.io/crates/nvtiff-sys)
[](https://docs.rs/nvtiff-sys)
Rust bindings to [nvTIFF](https://developer.nvidia.com/nvtiff)
via [bindgen](https://rust-lang.github.io/rust-bindgen).
## Instructions
1. Download and install from .deb at
<https://developer.nvidia.com/nvtiff-0-6-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Debian&target_version=12&target_type=deb_network>
2. Patch nvtiff.h file, change
- L553 `nvtiffTagDataType type,` -> `enum nvtiffTagDataType type,` enum type
For example, run these sed commands (with sudo) to apply the patch.
```bash
sed --in-place "s/nvtiffTagDataType type/enum nvtiffTagDataType type/g" /usr/include/nvtiff.h
```
3. Run `cargo build`
4. Bindings should be generated in `$CARGO_MANIFEST_DIR/src/nvtiff.rs` file.
### Testing
1. Download the following test files to the `images/` folder:
- <https://github.com/NVIDIA/CUDALibrarySamples/blob/master/nvTIFF/nvTIFF-GeoTIFF-Decode/images/bali_notiles.tif>
- <https://github.com/rasterio/rasterio/raw/1.5.0/tests/data/float32.tif>
- <https://github.com/developmentseed/titiler/raw/1.1.0/src/titiler/core/tests/fixtures/cog_dateline.tif>
2. Run `cargo test`.
## Compatibility
| 0.1.* | 0.5.* |
| 0.2.* | 0.6.* |
## Contributing
We welcome third-party patches.
If you have any changes you'd like to make to nvtiff-sys, please send a patch to the
[nvtiff-sys-devel](https://lists.sr.ht/~weiji14/nvtiff-sys-devel) mailing list.