wtorek, 18 maja 2010

Porządek w muzyce? "Nietakietrudne" zadanie

Muzyka - każdy z nas ją uwielbia. Wielu z nas zapewne gra na jakimś instrumencie, lub tworzy ją samemu. W dobie szybkiego internetu, dostępu do kultury w postaci masowej można posiadać niezliczone zbiory muzyczne. Dodatkowo strony takie jak Jamendo(strona z muzyką udostępnianą darmowo przez artystów) ubogacają nasze kolekcje każdego dnia. Odtwarzacze CD odchodzą w niepamięć, więc normalną praktyką jest przegrywanie płyt do postaci mp3.

Wszystko to składa się na bałagan na dysku. Zduplikowane utwory, błędnie wypełnione dane na temat artysty, tytułu czy choćby błędne nazwy plików. Czy da się nad tym zapanować? Jest pewien sposób.

Projekt MusicBrainz to otwarta baza danych artystów, wydań
płyt i utworów. Ogrom informacji tam dostępny jest zaskakujący. Każdy artysta ma przypisane odnośniki do odpowiednich sekcji Wikipedii, strony oficjalnej, czy działu w sklepach internetowych. Relacje między utworami są również zachowane, możemy łatwo się dowiedzieć kto napisał utwór, kto go remiksował, kto nagrał oryginał. Baza działa na zasadach podobnych do Wikipedii, jest w całości tworzona przez ochotników(co daje możliwość dodawania naszych unikatowych płyt z kolekcji).

Prawdziwą siłą jest natomiast aplikacja, która potrafi przeszukać nasze zbiory i automatycznie dopasować to do jakiego artysty i albumu utwór należy. Jeśli utwór nie
ma wypełnionych żadnych danych, program może wyszukać jego unikalną sumę kontrolną w bazie i na tej podstawie uzupełnić metatagi.

Jak zatem zabrać się za porządki?

1. Ściągamy aplikację z tej strony po czym instalujemy ją. Program jest od razu gotowy do
użycia. Uruchamiamy go.
MusicBrainz Picard świeżo po instalacji w Ubuntu 10.04

2. Przed naszymi oczami ukazuje się przejrzysty i mało ciekawy interfejs. Czas go podrasować. Wchodzimy w opcje programu
Opcje->Opcje
Domyślne ustawienia są całkiem zadowalające. Zmieńmy na dobry początek ustawienia Tagów.
ID3v2 version: 2.4
ID3v2 text encoding: UTF-8
Kolejna opcja, która wymaga zmiany ustawień to File Naming. Tu możemy ustawić według jakiego wzorca program przy zapisywaniu będzie nazywał pliki. Zależnie od uporządkowania naszego dysku możemy chcieć w nazwie pliku posiadać artystę, albu
m, numer ścieżki i tytuł. Moja kolekcja składa się z następujących podfolderów:
Kolekcja/*litera_początkowa_nazwy_artysty*/*nazwa_artysty*/*rok_albumu nazwa_albumu*/*numer_ścieżki tytuł*.mp3
więc w opcji file naming mam następujący ciąg
$if2(%albumartist%,%artist%)/%album%/$num(%tracknumber%,2) %title%

3. Po zamknięciu opcji - włączmy jeszcze dodatkową trzecią kolumnę z eksploracją plików z dysku.
CTRL+B

4. Możemy przystąpić do segregowania naszego zbioru. Jest na to kilka sposobów. Pojedynczą piosenkę przeciągamy do kolumny "Niepasujące pliki". Wyszukiwanie może się odbywać po danych wpisanych do pliku(przycisk "Sprawdź" - na górze okna), lub po niepowtarzalnej sumie kontrolnej PUID(przycisk "Przeszukaj"). Druga opcja z racji przeliczania sumy dla każdego pliku - trwa znacznie dłużej.

5. Gdy wyszukiwanie się zakończy - możemy sprawdzić w trzeciej kolumnie, czy dane się zgadzają(kolor zielony oznacza 100% zgodność) i jeśli tak - kliknąć "Zapisz". Jeśli z jakichś względów nie pasuje nam wynik wyszukiwania i chcielibyśmy zapisać piosenkę w innym albumie - przeciągamy plik jeszcze raz do "Niepasujących plików" i tym razem możemy użyć przycisku "Sprawdź" - na dole okna. Otworzy się strona wyszukiwarki i możemy przejrzeć listę wyników dla naszego pliku, oraz wybrać odpowiedni przez kliknięcie zielonego przycisku 'tagger'.

6. Albumy segreguje się w bardzo podobny sposób. Po przeciągnięciu całego albumu zaznaczamy, że jest to "Grupa" i wyszukujemy cały album w taki sam sposób jak pojedynczy
plik. Podobnie jak w wypadku pojedynczego pliku - przycisk sprawdź przenosi nas na strony bazy danych. Mamy wtedy dostęp do informacji o artyście, jego płytach, odnośnikach do stron, gdzie można kupić wydania CD czy odnośniki do Wikipedii.
MusicBrainz Picard po skonfigurowaniu. Widoczny jeden odnaleziony i dopasowany album.

MusicBrainz jest świetnym otwartym projektem, która znacznie ułatwia zapanowanie nad kolekcjami muzyki. Szerzej zainteresowanych odsyłam na strony MusicBrainz. Każdy może się zarejestrować i pomóc tworzyć bazę, lub po prostu dodać albumy, których w niej brak. Wszystko jest bardzo szczegółowo opisane w FAQ.

mój profil: tu
src: tu

piątek, 9 kwietnia 2010

WMU-6500FS - konfiguracja Transmission wraz z automatycznym pobieraniem

W tym poście pisałem o moich początkach z obudową dysku sieciowego firmy Ovislink. Jednym z głównych założeń była pełna konfiguracja klienta torrent z czytelną strukturą katalogów i konfiguracją.

1. Na dobry początek należało wybrać odpowiedniego klienta z łatwą konfiguracją. Wybór padł na Transmission. Konfiguracja jest czytelna, szczegółowo opisana na stronie. Jest również dostępny do ściągnięcia w prekompilowanej wersji ze strony twórcy softu JKR. Ściągamy najnowszą wersję(w chwili pisania transmission-1.92) i tak jak jest to opisane tutaj instalujemy nasz program.

2. Po zainstalowaniu klienta czas na jego konfigurację. Zamieszczam tu mój plik konfiguracyjny(który domyślnie po pierwszym uruchomieniu deamona jest w /mnt/C/sys/root/.config/transmission-daemon/settings.json), oraz wyjaśnienie najważniejszych opcji.
{
"alt-speed-down": 40,
"alt-speed-enabled": true,
"alt-speed-time-begin": 540,
"alt-speed-time-day": 127,
"alt-speed-time-enabled": true,
"alt-speed-time-end": 1380,
"alt-speed-up": 3,
"bind-address-ipv4": "0.0.0.0",
"bind-address-ipv6": "::",
"blocklist-enabled": false,
"dht-enabled": true,
"download-dir": "\/mnt\/C\/publiczny\/Temp", #katalog do którego przenoszone będą ukończone zadania;
"encryption": 1,
"incomplete-dir": "\/mnt\/C\/publiczny\/Temp\/Incomplete", #katalog na pliki nieukończone;
"incomplete-dir-enabled": true,
"lazy-bitfield-enabled": true,
"message-level": 3,
"open-file-limit": 20,
"peer-limit-global": 200,
"peer-limit-per-torrent": 50,
"peer-port": 31000, #port na którym będą tworzone połączenia, jeśli posiadamy router - port należy przekierować na nasz NAS;
"peer-port-random-high": 65535,
"peer-port-random-low": 49152,
"peer-port-random-on-start": false,
"peer-socket-tos": 0,
"pex-enabled": true,
"port-forwarding-enabled": false,
"preallocation": 1, #alokacja miejsca na dysku przed rozpoczęciem ściągania;
"proxy": "",
"proxy-auth-enabled": false,
"proxy-auth-password": "",
"proxy-auth-username": "",
"proxy-enabled": false,
"proxy-port": 80,
"proxy-type": 0,
"ratio-limit": 1.2000, #ratio, po osiągnięciu którego torrent będzie uważany za ukończony;
"ratio-limit-enabled": false,
"rename-partial-files": true,
"rpc-authentication-required": false, #kontrola dostępu poprzez login i hasło;
"rpc-bind-address": "0.0.0.0",
"rpc-enabled": true, #dostęp do daemona przez WebUI, czy choćby Transmission-remote;
"rpc-password": "{1797485b23fb32db23fd8ccbbacc483cb3cf2bc",
"rpc-port": 9091, #port na kŧórym łączymy się z daemonem;
"rpc-username": "",
"rpc-whitelist": "127.0.0.1, 192.168.1.*", #lista adresów IP z których można nawiązać połączenie;
"rpc-whitelist-enabled": true,
"speed-limit-down": 100, #globalne limity prędkości;
"speed-limit-down-enabled": true,
"speed-limit-up": 15,
"speed-limit-up-enabled": true,
"start-added-torrents": true, #automatyczne uruchamianie ściągania po dodaniu nowych torrentów;
"trash-original-torrent-files": true, #usuwanie dodanych plików torrent;
"umask": 0,
"upload-slots-per-torrent": 10,
"watch-dir": "\/mnt\/C\/torrenty", #folder, z którego automatycznie będą dodawane nowe torrenty;
"watch-dir-enabled": true #włączenie powyższej opcji;
}
3. Podsumowanie:
  • daemon jest skonfigurowany do automatycznego dodawania plików z określonego folderu;
  • dodane pliki torrent są usuwane;
  • seedowanie trwa do osiągnięcia konkretnego ratio;
  • porządek w folderach będzie zachowany przez użycie katalogu na nieukończone zadania;
  • dostęp zewnętrzny możemy mieć albo przez stronę WWW 'ip-twojego-nas:9091', albo przez transmission-remote-gui - aplikacja zewnętrzna z interfejsem wzorowanym na uTorrent;
  • limity prędkości możemy dowolnie ustawić(normalny i alternatywny - "Turtle mode");
  • port na którym działa klient jest przekierowany na routerze, dzięki czemu ilość połączeń będzie maksymalna;
4. Ostatnim krokiem jest automatyczne uruchamianie naszego daemona wraz ze startem NAS. Jako, że użyłem alternatywnego firmware JKR - plik, który odpowiada za wykonanie dodatkowych komend przy starcie to /mnt/C/sys/etc/rc-local. Po zalogowaniu telnetem uruchamiamy edytor tekstu komendą:
nano /mnt/C/sys/etc/rc-local
*Jeśli nie posiadasz nano - pobierz i zainstaluj tak jak inne aplikacje.
Oraz na końcu plik dodaj linię(jeśli zmieniłeś położenie katalogu konfiguracyjnego, zmień również parametr podany po '-g'):
transmission-daemon -g /mnt/C/sys/root/.config/transmission-daemon/settings.json
teraz wystarczy w konsoli wpisać
reboot
i po udanym restarcie obudowy klient torrent powinien być dostępny przez przeglądarkę WWW pod adresem IP Twojej obudowy, na porcie RPC, który masz w ustawieniach.

src: tu, tu, tu i tu

czwartek, 1 kwietnia 2010

WMU-6500FS - początki

Zakupiłem ostatnio obudowę dysku sieciowego "Ovislink Airlive WMU-6500FS". Obudowa ma spore możliwości co postanowiłem wykorzystać. Domyślny firmware pozwala na konfigurację dysku(formatowanie, sprawdzanie błędów), automatyczne ściąganie plików przez protokoły http i bittorrent, może działać jako serwer DHCP, czy accesspoint WiFi. Wszystko to dostępne przez całkiem wygodny interfejs przeglądarki. Wszystko działało bez problemów Out of Box. Po dokładniejszy opis urządzenia odsyłam do mało obiektywnego, ale pełnego informacji, artykułu na PClab.pl.

Osprzęt wewnątrz urządzenia to procesor zgodny z i386 wraz z 32 MB pamięci RAM. Skoro wnętrze to po prostu starszy komputer, to czemu nie podmienić oprogramowania na bardziej przystępny w konfiguracji i modernizacji system operacyjny, jak chociażby Linux. Podobnie pomyślał człowiek o pseudonimie JKR i zmodyfikował jądro Linuksa w wersji 2.4, dodał oprogramowanie i możliwość konfiguracji praktycznie każdego zakamarka systemu.

Cele, które sobie postawiłem do spełnienia na moim nowym urządzeniu:
Najpierw należało wgrać rzeczonego Linuksa, świetna instrukcja jest na polskiej stronie WMU-6500FS.

1. Z tej(lub tej) strony należy ściągnąć najnowszy firmware(w chwili pisania postu - mgb111-update-400b4.c009s.zip), aby móc odblokować możliwość wgrania swojej struktury systemu. Oprogramowanie wgrywamy tak jak to jest opisane w instrukcji urządzenia.

2. Gdy obudowa uruchomi się ponownie z nowym jądrem Linuksa w środku - będziemy potrzebowali
- minimal-config.tar, czyli przykładowej, minimalnej konfiguracji;
- libs-essential-090408-v1.tar.bz2, podstawowych bibliotek;
- mc-4.7.1-n-100325.tar.gz, najlepszy tekstowy menadżer plików;
- klienta telnetowego, najlepszy klient pod Windows to Putty, a pod Linuksem po prostu komenda telnet w konsoli;

3. Powyższe trzy pliki musimy przekopiować na nasz serwer do katalogu /Storage/C/. Potem logujemy się przez telnet(IP obudowy możemy sprawdzić w instrukcji; jako login podajemy root, a hasło nasze ustanowione, domyślnie 'airlive').

4. Nasze nowe środowisko serwera konfigurujemy po prostu rozpakowując wcześniej wymienione pliki:
cd /tmp/mnt/C/
tar xvf minimal-config.tar
tar xjvf libs-essential-090408-v1.tar.bz2
tar xzvf mc-4.7.1-n-100325.tar.gz
Jeśli mamy nowsze wersje plików - odpowiednio zmieniamy ich nazwy w komendach. I to wszystko - pierwszy cel jest spełniony, nowe środowisko już działa i czeka na dodawanie i konfigurację nowych usług.

src: tu, tu i tu

wtorek, 23 marca 2010

Total Commander - zmiana nazwy pliku pod klawiszem F2(jak w Explorer'ze)

Total Commander jest świetnym zamiennikiem systemowego eksploratora plików. Najlepsze funkcje, to wygodne przeglądanie dwóch folderów jednocześnie, wznawianie ściągania pliku, czy zmiana nazw wielu plików jednocześnie. Z przyzwyczajenia próbuję za każdym razem zmienić nazwę pliku klawiszem F2. Nie jest on domyślnie aktywny z tą akcją. Oto kilka prostych kroków aby włączyć tę opcję.

1. Uruchamiamy Total Commandera i wybieramy z menu kolejno: Konfiguracja->Opcje. Następnie przechodzimy do panelu 'Różne'.

2. Na dole okna wybierając opcję 'klawisze szybkiego dostępu' mamy możliwość skonfigurować nasz upatrzony klawisz F2. Wybieramy go z rozwijanej listy po prawej stronie.

3. Ostatnim krokiem jest wybór komendy, która będzie wykonana po kliknięciu naszego klawisza. Ta, która nas interesuje po kliknięciu w ikonę z lupą będzie się nazywać
cm_RenameOnly
4. Po jej wybraniu pozostaje nam już tylko zaakceptować zmianę klikając małą zieloną ikonkę. Już możemy korzystać do woli z tej funkcjonalności.

src: tu