Wie man BPM-tempo und audio-Funktionen in Python
Ich bin beteiligt an einem Projekt, das verlangt von mir zu extrahieren, die song-features wie die beats pro minute (BPM), tempo, etc. Aber ich habe nicht gefunden, eine passende Python-Bibliothek, die das kann genau erkennen, diese Funktionen.
Hat jemand einen Tipp?
(In Matlab,, ich weiß von einem Projekt namens Mirtoolbox, in denen die BPM, und die tempo-Informationen nach der Verarbeitung der lokalen mp3-Datei).
- Was ist das encoding-format? Ich habe nie gehört, dass ein python-sound-Bibliothek... Dann wieder, ich bin weit davon entfernt, der allmächtig und allwissend ist. Gehen Kurbel starten Sie Ihre google-Maschine und füttern Sie "python-sound-library"
Du musst angemeldet sein, um einen Kommentar abzugeben.
Echo Nest API ist das, was du suchst:
http://echonest.github.io/remix/
Python-bindings sind Reich, obwohl die Installation von Echo Nest kann schmerzhaft sein, da das team scheinbar nicht in der Lage, eine solide Installateure.
Jedoch nicht in der lokalen Verarbeitung. Stattdessen berechnet er die audio-fingerprint-und uploads der song für die Echo-Nest-Server, die für die Extraktion von Informationen mithilfe von algorithmen, die Sie nicht aussetzen.
Diese Antwort kommt ein Jahr später, aber egal, für den Datensatz. Ich fand drei audio-Bibliotheken mit python-bindings, die Extrakt-features von audio. Sie sind nicht so einfach zu installieren, da sind Sie wirklich in C und Sie brauchen, um richtig zu kompilieren, die python-Bindungen, und fügen Sie Sie, um den Pfad zu importieren, aber hier sind Sie:
ich habe festgestellt, das der code von @scaperot hier, die Ihnen helfen könnte:
Librosa hat die librosa.beat.beat_track () - Methode, aber Sie brauchen, um liefern eine Schätzung des BMP als "start_bpm" - parameter. Nicht sicher, wie genau es ist, aber vielleicht einen Versuch Wert.
Nun, ich kam vor kurzem in Vampy die wrapper-plugin, das ermöglicht die Verwendung von Vamp-plugins in Python geschrieben in jedem Vamp-host. Vamp ist ein audio-Bearbeitungs-plugin-system für Erweiterungen, das extrahieren von beschreibenden Informationen von audio-Daten. Hoffe, es hilft.
librosa
ist das Paket, die Sie suchen. Es enthält umfangreiche Funktionen für die audio-Analyse.librosa.beat.beat_track()
undlibrosa.beat.tempo()
Funktionen extrahieren Sie die erforderlichen features für dich.Spectral features wie chroma, MFCC, Zero-crossing-rate und Rhythmus-features wie tempogram können auch die mit den verfügbaren Funktionen in
librosa
.