Sobesednik / node-exiftool

A Node.js interface to exiftool command-line application.
MIT License
91 stars 15 forks source link

Pass buffer instead of reading from disk? #53

Closed dminkovsky closed 4 years ago

dminkovsky commented 4 years ago

Currently, I am using https://github.com/mattiasw/ExifReader, a pure JS solution. As input, this library accepts a Buffer, from which it can extract exif. My usecase involves creating digest hashes for media files, so since I am already reading file streams to perform the has digest, I just buffer the steam and then pass it to the exif library to get the metadata. Unfortunately, this library is nowhere near as rich as exiftool.

https://github.com/nathanpeck/exiftool wraps exiftool and accepts a Buffer as input, but since it spawns a new process every time, it is much slower.

Give your process optimizations, this library is significantly faster... basically as fast as the native JS solution, and it uses exiftool so it's much more robust! Would it be possible for it to accept a Buffer as input, like https://github.com/nathanpeck/exiftool? Is that a bad idea?

Thank you!