Jamendo Console Player
Polubiłem ostatnio słuchanie muzyki z Jamendo. Poziomem przewyższa (muzyka) pop-emo chłam, którym "raczą" mnie krajowe stacje radiowe, a do tego jest tak kompletnie nieznana (nieobecna w mainstream'ie), że nie przyciąga zbytnio mojej uwagi i nie przeszkadza w pracy. Wprost ideał, ... gdyby nie jedno 'ale'. Żeby słuchać trzeba wejść na stronkę.
Potrzeba
Niby nic, ale dla mnie to problem. Moim źródłem muzyki jest mój servero-media-center zrobiony z hapekowego cienkiego klienta i odpalanie na nim X'ów tylko do słuchania muzyki to zbyt duży 'koszt' (udam, że bez znaczenia jest fakt, że ja po prostu lubię pracować w konsoli).
Rozwiązanie
Gotowego rozwiązania nie znalazłem (jest kilka okienkowych jamendo-playerów). Trochę pokombinowałem w Pythonie. Zaliczyłem facepalm, gdy zorientowałem się, że adresy, które wyciągałem Wiresharkiem, są opublikowane na oficjalnej stronie Jamendo. W końcu doszedłem do czegoś co nawet działa.

Podstawowa funkcjonalność, która spełnia w 100% moje potrzeby zawiera się w trzech punktach:
- odtwarzanie konkretnego albumu
- ściąganie konkretnego albumu
- odtwarzanie Radia Jamendo
Nie ma żadnego przewijania, scroblowania, dodawania do ulubionych, itd. Żadnych zbędnych wodotrysków. Odpalam to sobie w screenie i leci sobie godzinami. Gdy odtwarzany kawałek wyjątkowo mi się nie podoba pojedyncze
Ctrl+C przechodzi do następnego utworu, przytrzymane - ubija playera.
Pod maską
Kod jest prosty (wręcz prostacki). Ameryki nie odkryłem. Odpytując kilka adresów, wyciągam poprzez API Jamendo adres ścieżki audio. Pozostaje tylko ją odtworzyć.
Na początku kombinowałem z gstreamer'em ale okazało się, że na jednej maszynie działa, a na drugiej - mimo zbliżonej konfiguracji - odmawia posłuszeństwa. Z wrodzonego lenistwa sięgnąłem więc po rozwiązanie najprostsze - uruchamiam w tle aplikację mpg123 z adresem mp3ki jako parametrem. Całość działa sprawnie i zgrabnie, jak na razie, żadnych większych problemów nie zaobserwowałem.
Repo
Jeśli ktoś ma ochotę zajrzeć lub pogrzebać w kodzie, to proszę się nie krępować:
git://github.com/satanowski/Jamendo-Console-Player.git
Wytykanie błędów mile widziane :)

01/07/2010 - 09:15:07
A to chodzi pod DOSem też ??:)
06/07/2010 - 18:38:28
Lubię to!