Domanda

Come posso creare un checksum dei soli dati multimediali, senza i metadati per ottenere un'identificazione stabile per un file multimediale. preferibilmente un approccio multi-piattaforma con una libreria che ha il supporto per molti formati. per esempio. vlc, ffmpeg o mplayer.

(file multimediali devono essere audio e video in formati comuni, le immagini sarebbe bello avere troppo)

È stato utile?

Soluzione

Non so di alcun software indipendente dalla piattaforma esistente che compirà questo, ma so di un modo in cui questo potrebbe essere realizzato in un linguaggio interpretato (indipendente dalla piattaforma) come Java.

In sostanza, abbiamo semplicemente bisogno di mettere a nudo tutti i metadati (tag) dal file, demultiplexing file video in anticipo. Teoricamente dopo demux e metadati rimozione, si potrebbe hash del file e confrontare con un altro file che ha subito lo stesso processo per abbinare i file identici pur avendo diversi tag. A differenza di un'impronta digitale, questo non sarebbe identificare canzoni simili / film, ma i file identici (immaginate si potrebbe desiderare le 10 versioni diverse o bitrate di un determinato brano che hai già archiviato, ma non si desidera 2 copie identiche di uno di essi girano) .

La parte più preoccupante di questo è la rimozione tag in quanto vi sono molte specifiche diverse per formati di tag che non sono necessariamente implementati stesso attraverso diverse applicazioni, vale a dire lo stesso file audio esattamente determinato tag identiche separatamente attraverso due applicazioni differenti non può comportare file di output identici. L'unico modo in cui questo potrebbe rappresentare un problema fatale al concetto di un checksum solo audio è se il software di codifica popolare rende eventuali modifiche alla parte audio binario del file, o pastiglie l'audio in modo non-standard.

Facendo una somma di controllo è banale, ma io non sono a conoscenza fuori dalla parte superiore della mia testa di qualsiasi piattaforma biblioteche indipendenti demux e file MPEG detag. So che in 'ambienti nix, mpgtx è un grande strumento da riga di comando in grado di svolgere il demux e detag, ma, ovviamente, che non è una soluzione indipendente dalla piattaforma.

Forse qualcuno là fuori si sente ambizioso?

Altri suggerimenti

Una possibile soluzione che ho trovato sembra essere con vlc:

./VLC -I rc snd.mp3 :sout='#std{mux=raw,access=file,dst=-}' vlc://quit | sha1sum
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top