rusty-chromaprint
This is an in-progress port of chromaprint:
Chromaprint is an audio fingerprint library developed for the AcoustID project. It's designed to identify near-identical audio and the fingerprints it generates are as compact as possible to achieve that. It's not a general purpose audio fingerprinting solution. It trades precision and robustness for search performance. The target use cases are full audio file identification, duplicate audio file detection and long audio stream monitoring.
Usage
To calculate a fingerprint for an audio stream simply create a new Fingerprinter
and give it all the audio samples:
use ;
For a complete example check out compare
from this repository
which is using Symphonia to decode various audio formats. It compares two files and prints out their common segments
cargo run --release --bin compare -- audio1.mp3 audio2.wav
# | File 1 | File 2 | Duration | Score
-----+--------------------------+--------------------------+------------+---------
1 | 0:00:04.83 -- 0:00:19.44 | 0:00:00.00 -- 0:00:14.61 | 0:00:14.61 | 0.69
For more details on comparing audio fingerprints reach out to the documentation.