Domanda

La mia vasta collezione (120 GB) musica contiene molti brani duplicati, e ho cercato di tracce di impronte digitali nella speranza di rilevamento dei duplicati. E dato che sono un CS Maggiore Sono molto curioso di sapere cosa si fa là fuori? Nulla che faccio ha quasi la precisione di qualcosa come Shazam o Lala.com. Come fanno a tracce "hash"? Ho eseguito un hash MD5 di serie su tutti i miei file (26.000 file) e ho trovato centinaia di hash uguali su tracce diverse, in modo che non funziona.

Sono più interessato a Lala.com dal momento che lavorano con file completo, a differenza di Shazam, ma sto assumendo sia utilizzare una tecnica simile. Qualcuno può spiegare come generare identificatori unici per la musica?

È stato utile?

Soluzione

Il documento fondamentale sul fingerprinting audio è l'opera di Haitsma e Kalker nel 2002-03. Per ogni fotogramma di audio, pre-elaborazione (differenze tra gli intervalli temporali e bande di frequenza) e poi memorizza una versione binarizzata dello spettro del telaio.

Questa procedura aggiunge robustezza. Se l'intero segnale viene spostato nel tempo, funziona ancora (almeno, si può ricavare un limite inferiore sul degrado delle prestazioni). E 'abbastanza robusto al rumore ambientale. Fin dalla sua nascita, ci sono stati molti articoli su di basso livello musicale somiglianza, quindi non c'è una risposta univoca.

Avete file assolutamente identici, vale a dire, i segnali sono ora allineati, la profondità di bit è lo stesso, la frequenza di campionamento è lo stesso? Poi penserei un hash MD5 come dovrebbe funzionare. Ma se uno qualsiasi di questi parametri sono cambiati, così sarà gli hash. In tal caso, una procedura simile a quella già detto in precedenza avrebbe funzionato meglio.

Date un'occhiata al procedimento Ismir disponibili gratuitamente on-line. Cose divertenti. http://www.ismir.net/

Altri suggerimenti

Ci sono un sacco di algoritmi per le impronte digitali acustico. Alcuni di quelli più popolari sono:

  1. AMG LASSO
  2. AudioID
  3. LibFooID

In realtà libfooId è opensource, in modo da poter controllare il suo codice in google-code !!

Date un'occhiata a lui Acoustic Fingerprint su Wikipedia. Ha riferimenti per alcuni giornali così come i collegamenti alle implementazioni (compresa l'open source fdmf ).

Dopo qualche ricerca più (anche se questo non è determinante a tutti!), Mi è capitato attraverso il wiki in MusicBrainz.org che elenca in dettaglio alcuni degli approcci che usano:

http://musicbrainz.org/doc/Audio_Fingerprint

http://musicbrainz.org/doc/How_PUIDs_Work

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top