MpegDupes Is a tool built for comparing binary MPEG7 signatures that have been generated by FFMPEG
Install slog
sudo apt-get install build-essential libavcodec-dev libavfilter-dev
YOUR GCC VERSION MUST SUPPORT OPENMP FOR CSV MODE
git clone https://github.com/Jacotsu/Mpeg7Dupes
cd Mpeg7Dupes
make release -l$(nproc)
Copy ./bin/mpeg7Dupes.elf
in $HOME/.local/bin
or /usr/local/bin
Generate your file signatures with the following command.
ffmpeg -i input.mkv -vf signature=filename=signature.bin -map 0:v -f null -
Keep in mind that only binary signatures are supported at the moment.
Then compare the signatures with the following command
./bin/mpeg7Dupes.elf {signature file 1} {signature file 2} ...
Or create a list
of files, like the following
{path to signature file 1}
{path to signature file 2}
{path to signature file 3}
...
{path to signature file n}
And then launch mpeg7Dupes
./bin/mpeg7Dupes.elf -l list_of_files
The following command will print in CSV to the stdout, due to a slog limitation (can't redirect logging to stderr) the first line must be manually deleted (can be easily done with bash).
./bin/mpeg7Dupes.elf -f csv {signature file 1} {signature file 2} ...