* Covery alb

13. September 2010, Jakub Horák. Zařazeno mezi Scripts.


Potrpím si na detaily, proto je pro mě velice důležité mít ke všem písničkám příslušné covery alb. Tyto covery rád vidím jako náhledy složek při procházení ve správci souborů. Napsal jsem si tedy sadu skriptů 😉

Ve Windows se náhled složky uchovává v souboru folder.jpg. Na Freedesktopu pak podle specifikace Desktop Entry musí ve složce existovat soubor .directory, ve kterém je definováno, který PNG obrázek použít jako náhled dané složky. Zvolil jsem si, že na Freedesktopu mám náhled vždy uložen ve skrytém souboru .folder.png.

Práci jsem rozdělil do tří skriptů:

  1. Zjištění URL coveru podle jména umělce a názvu alba. Tento skript (getcover.rb) se připojuje k Last.fm API, které se stará o zbytek :-). Původně se jedná o dílo Dana Sosedoffa.
  2. Přejmenování obrázku na folder.jpg pro Windows Media Player, vytvoření obrázku .folder.png a souboru .directory pro Freedesktop. Skript (mkfolderimg.sh) lze využít také např. pro generování náhledů k fotoalbům.
  3. Skript, který projde všechny alba, pro každé album umístí cover podle specifikací Freedesktopu nebo WMP a případně ho stáhne z internetu (mkmusiccovers.sh). Implementace nejdřív vyhledá všechny hudební soubory a sestaví seznam alb, jakožto kandidátů na vytvoření coveru. Poté prochází jednotlivá alba a pokouší se sestavit náhledy. Pokud ve složce alba není žádný obrázek, stáhne cover z URL získané pomocí 1. skriptu.

Všechno pěkně zabalené si stáhněte zde: musiccovers.20100913.tar.gz.

Tags: , , ,



2 Responses to “Covery alb”

  1. Martin Says:

    Fungovalo by tohle i pod Cygwinem?

  2. Hořec Says:

    Teoreticky ano. Skript 1) je ale napsanej v Ruby, takže bys ho musel mít do Cygwinu doinstalovaný. Dále má skript 1) závislost na RubyGemu xmlsimple.

Zpáteční odkaz

Zanechat vzkaz