pylastfp Last.fm akustik parmak izi kütüphanesinden (adlandırılır fplib) ve ilgili API hizmetlerine bir Python arayüzü. & Nbsp; Bu parmak izi çıkarma, parmak izi kimlik araması ve iz meta arama gerçekleştirir. Aynı zamanda ses dosyalarını çözmek için bazı yardımcıları ile birlikte geliyor.
Kurulum
Eğer bir derleyici ve kendini fplib gerekli bağımlılıkları ihtiyacınız olacak, yüklemek için: FFTW ve libsamplerate (tek hassasiyet yüzen için derlenmiş).
Bu sahip olduğunuzda, kolayca pip kullanarak PyPI yükleyebilirsiniz:
pylastfp yüklemek pip
Veya, indirme sayfasına pip (veya easy_install), kafa yoksa. Normal yükleme komutunu çalışması gerekir:
Python yüklemek setup.py
Sürüm kontrolü kaynağından oluşturmak için (yani, bir salma arşivini itibaren), ayrıca cython ihtiyacınız olacaktır. (Kaynak dağılımları Cython ihtiyacını kaçınarak. Bu paketin setup.py size Cython yüklü olup olmadığını tespit etmek için oyunlar oynar, oluşturulan C ++ dosya içerir.)
Koşu
Sen dahil fingerprinter / arama komut çalıştırabilirsiniz, lastmatch.py, yüklemenizi test etmek için:
& Nbsp; lastmatch.py mysterious_music.mp3
Bu Last.fm veritabanından meta eşleşmeleri gösterecektir. komut MP3 çözmek için Gstreamer Python bağlamaları kullanır. Ayrıca -m bayrağını sağlayarak yerine Gstreamer ait (yalnızca ses MPEG) pymad kullanabilirsiniz:
& Nbsp; lastmatch.py -m mysterious_music.mp3
Kod Kullanımı
betik bu pylastfp kullanmak için her zamanki gibi, sergiler:
>>> Import lastfp
>>> Xml = lastfp.gst_match (apikey, yol)
>>> Maçlar = lastfp.parse_metadata (xml)
>>> Print maçları [0] ['sanatçı'], '-' [0] ['başlığı'] maçları
Ulusal - Sahte Emprire
Bu örnek ses verilerini kodunu çözmek için Gstreamer kullanır gst_match kolaylık işlevini kullanır. fonksiyonu sadece bu işlevi demiyorlar, Gstreamer bağlı istemiyorsanız eğer öyleyse, çağrıldığında Gstreamer modülü alır. Mad_match adlandırılan başka benzer işlevi yerine pymad kütüphanesi ithal ve yerine Gstreamer ve çözmek için MAD kullanır.
Eğer çözme ses kendi yolunuzu varsa, alt düzey arabirimini kullanabilirsiniz:
>>> Xml = lastfp.match (apikey, pcmdata, samplerate, time_in_secs)
Tabii ki, sen parmak istediğiniz ses için bir PCM akışı gerekir. pcmdata parametresi C, kısa (16-bit tamsayı) değerler diziler olarak PCM verileri içeren Python str veya tampon nesneleri iterable olmalıdır.
Bu işlevlerin (maç gst_match ve mad_match) Tüm metadata denilen ek bir isteğe bağlı bir parametre kabul eder. Bu dosyanın meta olarak geçerli tahmin içeren bir dict olmalıdır. Last.fm kendi veritabanı geliştirmek için bu bilgileri kullanabilirsiniz. "sanatçı", "albümünü" ve "track": dict bu anahtarları (her biri isteğe bağlıdır) kullanmalısınız.
Modül dahili Last.fm API TOS uyarınca saniyede 5 sorgular, sınırlayıcı evreli API gerçekleştirir
Bu sürümdeki yeni nedir:.
< p>- yerine kullanın dahil pygst ve pymad kod çözücüler audioread.
sürüm 0.5 yeni Nedir:
- API boş yanıtları taşıyınız. setup.py şimdi Homebrew kullanıcı yerel öneki arar.
nedir sürüm 0.4 Yeni:
- dosyalar açık kalmasına neden oldu gstdec Fix temizleme hata .
sürüm 0.3 yeni Nedir:
- HTTP hataları ele Fix yazım hatası. HTTP durum çizgisi bozuk olduğunda davalarını
sürüm 0.2 yeni Nedir:
- korkunç bir bellek sızıntısı sabitleyin. Dosya çok kısa olduğunda güvenle başarısız. Güvenle API döndü hatalı biçimlendirilmiş XML işlemek. Kulp ve HTTP hatalarını açığa.
Gereksinimleri :
- Python
Yorum Bulunamadı