Skip to content

Introduction ​

OxiDex is a modern, high-performance Rust implementation of the industry-standard ExifTool metadata management library and command-line application.

What is OxiDex? ​

OxiDex provides a memory-safe, high-performance alternative to the Perl-based ExifTool while maintaining full compatibility with its extensive metadata tag support. It delivers superior performance through zero-cost abstractions, native cross-compilation capabilities, and seamless integration into modern software ecosystems.

Key Capabilities ​

Metadata Extraction ​

Read metadata from 300+ file formats including images (JPEG, PNG, TIFF, RAW), videos (MP4, MKV, AVI), audio (MP3, FLAC), and documents (PDF).

Metadata Writing ​

Modify EXIF, XMP, and IPTC metadata with atomic file operations ensuring data integrity.

Batch Processing ​

Process thousands of files in parallel, leveraging all CPU cores for maximum performance.

Format Detection ​

Automatically identify file formats using magic byte detection, even when file extensions are incorrect.

Who Should Use OxiDex? ​

Photographers: Manage metadata in large photo libraries efficiently. Process 1000 RAW files in under 200ms.

Archivists: Preserve and extract metadata from diverse file formats with memory-safe operations.

Developers: Integrate metadata management into applications via Rust library API or C FFI bindings.

System Administrators: Deploy static binaries with no runtime dependencies across multiple platforms.

Current Status ​

Version: 1.1.0 (Stable Release)

  • ✅ 16,684 metadata tag definitions across 140+ format families (see Tag Coverage for the measured extraction-conformance score)
  • ✅ 140+ format families
  • ✅ 3.7-9.7x performance improvement
  • ✅ Full CLI with backward compatibility
  • ✅ Rust library API and C FFI bindings
  • ✅ Cross-platform binaries (Linux, macOS, Windows)

Next Steps ​

Project Goals ​

  1. ExifTool Extraction Parity: Match ExifTool's output on every tag it reads, measured by conformance score
  2. High Performance: 10-100x faster than Perl implementation
  3. Memory Safety: Eliminate vulnerabilities through Rust's ownership system
  4. Drop-in Replacement: CLI compatibility for seamless migration
  5. Developer-Friendly: Clean API for library and FFI integration

License ​

OxiDex is released under the GNU General Public License v3.0 (GPL-3.0).

Acknowledgments ​

This project is inspired by ExifTool by Phil Harvey. OxiDex is an independent reimplementation and is not affiliated with or endorsed by the original ExifTool project.

Released under the GPL-3.0 License.