Domanda

sto legando a fare il rilevamento silenzio in file AIFF audio non compressi. Io preferisco farlo in Python, ma considererei altre opzioni, se questo è super inefficiente. I file non compressi mi occupo dovrebbero essere 20 MB (dimensione massima).

posso capire basi di elaborazione del segnale, ma non sono un esperto in esso.

È stato utile?

Soluzione

Sei fortunato! Il aifc biblioteca sembra fare abbastanza per sostenere la risoluzione del problema.

Altri suggerimenti

pseudo codice indipendente dal linguaggio:

  • per ogni intervallo di tempo (ad esempio 10 ms)
    • calcolare RMS di potenza nella finestra di tempo
    • silenzio = RMS di potenza

Per calcolare Potenza RMS:

  • sum_sq = 0
  • per ogni campione in una finestra del campione N
    • sum_sq + = campione ^ 2
  • RMS = sqrt (sum_sq / N)

Probabilmente anche voler aggiungere un ulteriore strato di rilevazione, ad esempio, decidere che il silenzio = M finestre silenti consecutivi, dove M determina per quanto tempo un silenzio deve essere prima che conta come un silenzio vero e proprio.

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