Questo è qualcosa che ho cercato di fare per un po ', ed è più di una domanda aperta. Se qualcuno ha qualche conoscenza che può aiutarmi a far luce su questo, sarebbe molto apprezzato.Mp3 parsing in Python
Voglio decodificare il flusso audio in un mp3 e usarlo per guidare l'animazione, tutto usando python. A quanto ho capito, i dati audio in un mp3 sono memorizzati in frame di 32 subbands di frequenza (o bin di frequenza), che è l'ideale per me - se potessi prendere un mp3 ed estrarre un'ampiezza per ogni sottobanda su ciascun frame, sarebbe sii perfetto per quello che voglio fare.
Ho trovato la soluzione qui https://bitbucket.org/portalfire/pymp3 dove tutta l'elaborazione sembra essere eseguita in python. È piuttosto lento, ma anche se potessi usarlo per estrarre ciò che voglio, sarebbe bello - io sto faticando a capire cosa sta succedendo in quel codice però. Avevo anche una soluzione in cui mi sono convertito in wav e poi ho usato fft per estrarre le frequenze dal wav. Questo è stato molto rumoroso e sembra un modo stupido di farlo in quanto i dati che voglio vengono memorizzati direttamente nell' mp3 - la conversione in un'onda sonora sembra non necessaria. Questo era in realtà più veloce del primo però. Ecco cosa ho finito con:
http://www.youtube.com/watch?v=f_0FORxlK4A
Beh, se qualcuno ha qualche consiglio, o l'esperienza che vogliono condividere, o le idee per le librerie che dovrei guardare, mi piacerebbe davvero sentire.
Grazie!
Henry
Si consiglia di passare attraverso http://wiki.python.org/moin/PythonInMusic una volta per verificare un enorme set di librerie disponibili là fuori –
Ci sono un certo numero di librerie MP3 e chiedere consigli su quale usare è esattamente il tipo di cosa che un forum di domande e risposte come SO è cattivo da gestire. – abarnert
Un consiglio che posso dare: se sai come usare cython, ctypes, o qualsiasi altro meccanismo simile, vale la pena guardare le librerie C come mpg123 che non hanno alcun collegamento Python e che racchiudono solo i bit di cui hai bisogno . Hai molte più opzioni in questo modo. – abarnert