PDA

Visualizza la versione completa : [C++] Libreria audio per fare analisi di tracce audio


gprox
28-07-2018, 13:58
Ciao a tutti, volevo divertirmi un po' con le tracce audio e mi chiedevo se era possibile confrontare due tracce audio tra di loro per individuare indipendentemente dal nome e dalla dimensione se i due audio sono simili ?

Caso banale due file uguali con nome diversi hanno la stessa traccia audio => deve ritornare che sono simili
caso leggermente banale le due tracce audio sono uguali ma hanno volume differente => anche in questo caso dovrebbero essere individuati come uguali
caso più divertente, traccia A è contenuta dentro la traccia B => qui sarebbe carino ritornare tipo la percentuale di similarità

Ora la prima cosa che mi veniva in mente era di utilizzare le trasformate wavelet per confrontare i file .. però prima di partire all'avventura e reimplementare la ruota in qualcosa di estremamente grande ma divertente, volevo chiedervi se avete qualche documentazione\libreria da consigliarmi da poter analizzare ?

Grazie =)

linoma
28-07-2018, 20:34
la butto prova con lo scarto quadratico medio se esiste :D

gprox
04-08-2018, 22:57
ahahah non è cattiva come battuta .. potresti farlo se convertissi la traccia audio in un array di numeri e poi fare lo scarto quadratico per ognuno di essi .. ma avresti il problema dell'associazione di un numero che però abbia senso per tutto il resto della procedura

linoma
05-08-2018, 04:01
lho buttata li ricordo vagamente che la RMS dovrebbe essere indice di quanto l'ampiezza di un segnale sia variabile. Incuriosito ho troavto questa pagina (https://medium.com/@LeonFedden/comparative-audio-analysis-with-wavenet-mfccs-umap-t-sne-and-pca-cb8237bfce2f)

linoma
05-08-2018, 07:47
...pensandoci meglio credo che una grandezza tale da poter essere usata come termine di paragone potrebbe essere l'integrazione della tua f(x) anche se tuttavia potrebbe risentire del peso dovuto a diversi volumi di registrazione per cui forse si potrebbe tentare la strada di una normalizzazione della tua sinusoide per poi integrala e usarlo apppunto come termine di paragone.

Loading