pylastfp este o interfață Python pentru biblioteca acustic Last.fm lui amprentare (numite fplib) și serviciile conexe API & nbsp;. Se efectuează extracția de amprente, căutare ID amprentă, și metadate urmări căutare. De asemenea, vine cu unele ajutoare pentru decodare fișiere audio.
Instalare
Pentru a instala, veți avea nevoie de un compilator și dependențele necesare fplib sine: fftw (compilat pentru flotoare singur precizie) și libsamplerate.
Odată ce ai aceste, puteți instala cu ușurință de la PyPI folosind pip:
Pip instala pylastfp
Sau, dacă nu aveți pip (sau easy_install), cap de pe pagina de descărcare. Instala Comanda normală ar trebui să funcționeze:
python setup.py instala
Pentru a construi de la sursa de control al versiunii (de exemplu, nu dintr-o arhivă tar eliberare), veți avea nevoie, de asemenea, Cython. (Distribuțiile sursa include fișierul generat C ++, evitând nevoia de Cython. Setup.py Acest pachet de joacă trucuri pentru a detecta dacă aveți instalat Cython.)
alergare
Puteți rula scriptul inclus fingerprinter / căutare, lastmatch.py, pentru a testa instalarea:
& Nbsp; mysterious_music.mp3 lastmatch.py
Acesta va arăta meciuri metadate din baza de date Last.fm lui. Scriptul utilizează legăturile Python GStreamer a decoda MP3-uri. Puteți folosi, de asemenea, pymad loc de gstreamer (pentru MPEG audio numai) prin furnizarea de pavilion -m:
& Nbsp; lastmatch.py -m mysterious_music.mp3
Utilizarea în Codul ta strong>
Scriptul prezintă modul obișnuit de a utiliza pylastfp, care este aceasta:
>>> Lastfp import
>>> Xml = lastfp.gst_match (apikey, cale)
>>> Meciuri = lastfp.parse_metadata (xml)
>>> meciuri imprimare [0] ['artist'], "-", meciuri [0] ['title']
National - Emprire Fake
Acest exemplu utilizează funcția confort gst_match, care foloseste GStreamer a decoda date audio. Funcția importă modulul GStreamer atunci când este solicitat, deci, dacă nu doriți să depindă de GStreamer, chiar nu suna această funcție. O altă funcție similară numit mad_match importă în locul bibliotecii pymad și folosește MAD pentru a decoda loc de GStreamer.
Dacă aveți propriul mod de decodare audio, puteți folosi interfața de nivel inferior:
>>> Xml = lastfp.match (apikey, pcmdata, SampleRate, time_in_secs)
Desigur, veți avea nevoie de un flux PCM pentru audio pe care doriți să amprenta. Parametrul pcmdata trebuie să fie o iterable de Python obiecte str sau tampon care conțin date PCM ca matrici de intregi (16-bit) valorile C scurte.
Toate aceste funcții (meci, gst_match și mad_match) să accepte un parametru opțional suplimentar numit metadate. Ar trebui să fie o dict conține ghici curent la metadatele fișierului. Last.fm ar putea folosi aceste informații pentru a îmbunătăți baza lor de date. Dict ar trebui să utilizeze aceste chei (toate din care sunt opționale): "artist", "album", și "piesa".
Modulul efectuează intern thread-safe API limitarea la 5 interogări pe secundă, în conformitate cu TOS API Last.fm lui
Ce este nou în această versiune:.
< p>- Utilizarea audioread loc de incluse pygst și pymad decodoare.
Ce este nou în versiunea 0.5:
- Mâner răspunsuri goale de API. setup.py caută acum prefixul local user Homebrew.
Ce este nou în versiunea 0.4:
- bug Fix curățare în gstdec care a fost cauza fișiere să rămână deschise .
Ce este nou în versiunea 0.3:
- Fix greșeli în manipularea de erori HTTP. Mâner cazuri linia de stare HTTP este incorect
Ce este nou în versiunea 0.2:
- Fix o scurgere de memorie oribil. Nu în condiții de siguranță atunci când fișierul este prea scurt. Mâner în condiții de siguranță XML malformat întors din API. Mâner și expune eșecuri HTTP.
Cerințe :
- Python
Comentariile nu a fost găsit