| CARVIEW |
Cantaloupe
High-performance dynamic image server in Java
Cantaloupe is an open-source dynamic image server for on-demand generation of derivatives of high-resolution source images. With available operations including cropping, scaling, and rotation, it can support deep-zooming image viewers, as well as on-the-fly thumbnail generation. Compliance with the IIIF Image API enables it to work with a growing number of client applications.
Easy
- Get started in minutes. A web server is built right in.
- One human-friendly configuration file with extensive inline help.
Standards-Compliant
- Fully conformant to all IIIF Image API versions through 3.0.
Secure
- Dynamic, selective image and text watermarking with fine-grained controls.
- On-the-fly redaction of image regions.
- Built-in support for HTTPS and HTTP Basic authentication.
- Supports arbitrary authorization policies for integration into diverse infrastructures, and tiered access to dynamically degraded images.
Flexible
- Serve images from multiple sources, with different settings, via the same application instance.
- Customize behavior using a delegate class written in Ruby or Java.
- Dynamically transform embedded XMP image metadata.
- HTTP methods for common management functions like purging the cache and updating the configuration.
High-Quality
- Selectable resample filters, sharpening levels, and compression levels to optimize output for speed or quality.
Modular
- Pluggable sources for retrieving images from a variety of places—including filesystems, databases, remote web servers, and cloud storage—with optional scriptable "hooks" to enable dynamic source selection and image lookup.
- Pluggable processors to support a variety of source image formats—as well as still-frame extraction from videos in a variety of formats.
- Pluggable caches with customizable strategies and available automatic maintenance.
Fast
- Optimized JPEG2000 and TIFF readers capable of excellent performance with massive images.
- Available filesystem, database, Redis, in-memory, and cloud storage caches to speed up response times and reduce server load.
- An in-memory metadata cache boosts performance for frequently-accessed images.
Get Started
Upgrading? Review UPGRADING.md and CHANGES.md in the downloaded file for important info.
DownloadRequires Java 17+
Optional components, such as particular processors, may have other dependencies; see the user manual.
- The distribution archive bundles a sample configuration file, named cantaloupe.properties.sample. Make a copy and open it in a text editor.
- Set
FilesystemSource.BasicLookupStrategy.path_prefixto a folder path containing some images.
From a command prompt:
java -Dcantaloupe.config=/path/to/cantaloupe.properties -Xmx2g -jar cantaloupe-x.x.x.jar
From a command prompt:
java -Dcantaloupe.config=C:\path\to\cantaloupe.properties -Xmx2g -jar cantaloupe-x.x.x.jar
Now, assuming you have an image named image.tif, try accessing:
Get Help
For questions and comments, please start a GitHub discussion.
For bug reports, feature requests, and other to-do items, please file a GitHub issue.