Puddletag — sensowny edytor tagów muzycznych pod Qt
Informacje o wpisie.
Opublikowano 02 września 2011 o 14:17:51 w kategoriach: Słowo napisane, Zerojedynka.
Dawno temu, chyba gdzieś w okolicach 2006 roku, szukałem programu do modyfikacji tagów ID3. Wtedy też znalazłem EasyTag, naprawdę prostą w obsłudze i przyjemną aplikację. Używałem jej od tego czasu i nawet nie myślałem o zmianie — aż do niedawna, kiedy przeszedłem z Fluxboksa na KDE. Dopiero wtedy ujawniła się wcześniej niedostrzegana przeze mnie wada EasyTag — jest to aplikacja z interfejsem graficznym rysowanym przy pomocy GTK+. Oczywiście nic nie stoi na przeszkodzie, by na KDE uruchamiać programy wykorzystujące GTK+. Wiąże się to jednak z dwoma problemami: pierwszym jest brak spójności wyglądu aplikacji w obrębie systemu (choć trzeba oddać, że KDE oferuje częściową integrację z GTK+), drugim zaś stosunkowo długi czas pierwszego uruchomienia (spowodowany koniecznością wczytania wcześniej nieużywanych bibliotek). Trochę z tych dwóch powodów, a trochę dla bliżej nieokreślonych „zasad”, zacząłem rozglądać się za jakimś zamiennikiem.
Niestety, zamienników takich jest jak na lekarstwo. Jest lltag, ale ma problemy ze znakami diakrytycznymi w tagach plików MP3; poza tym jest to aplikacja terminalowa, a nie po to mam KDE, żeby wszystko robić w terminalu. Kiedyś był lsongs, ale już od lat nie jest aktualizowany. Jest Juk, ale to raczej odtwarzacz z funkcją modyfikacji tagów, niż pełnoprawne narzędzie do ich zmiany. Podobne funkcje ma wiele innych odtwarzaczy. Wreszcie jest kid3 — temu powinienem poświęcić więcej uwagi, gdyż zasługuje na chociaż odrobinę zainteresowania. Mi jednak nie odpowiada jego skupienie na plik (zamiast na katalog) — oferuje doświadczenia zbyt odmienne od EasyTag, a jednak prościej jest zmienić program niż przyzwyczajenia.
No i wreszcie jest puddletag, któremu zdecydowałem się poświęcić niniejszy wpis.
Puddletag został napisany jako uniksowy zamiennik darmowego programu na Windowsa Mp3Tag. Oglądając zrzuty ekranu nie sposób pozbyć się wrażenia, że tak właśnie jest; nie mogę jednak ocenić czy wrażenie to jest uzasadnione, gdyż samego Mp3Tag nie używałem.
Główne okno programu prezentuje się całkiem standardowo. Po lewej stronie znajduje się drzewo przedstawiające hierarchię katalogów w systemie. W środkowej części ekranu znajduje się lista plików obsługiwanych przez puddletag umieszczonych w wybranym katalogu; puddletag obsługuje formaty ID3v1, ID3v2 (MP3), MP4 (MP4, M4A), VorbisComments (Ogg, FLAC), Musepack (MPC), Monkey's Audio (APE) oraz WavPack (WV), czyli znacznie więcej niż na przykład ja potrzebuję. Wreszcie po prawej stronie znajduje się panel z głównymi tagami (wykonawca, tytuł, album, numer ścieżki, rok, gatunek oraz pole komentarzy; można je usuwać lub dodawać nowe). W rzeczywistości okno programu składa się jedynie z tego środkowego panelu, pozostałe zaś są oknami zagnieżdżonymi. Można je swobodnie przenosić, zmieniać ich rozmiary, dodawać oraz usuwać (domyślny widok nie zawiera wszystkich dostępnych paneli). Prócz tego w górnej części umieszczono standardowe menu oraz pasek narzędzi. Pozycje zarówno w menu, jak i na pasku narzędzi, można dowolnie modyfikować, jednak wymaga to ręcznej zmiany pliku ~/.puddletag/menus; plik można zmieniać przy włączonym programie, jednak zmiany zostaną wprowadzone dopiero od następnego uruchomienia. Na dole okna programu znajduje się niewielki pasek stanu, w którego prawej części umieszczono informacje o aktualnie zaznaczonych plikach (ich długość w minutach oraz wielkość w megabajtach) oraz wszystkich plikach w danym katalogu (takie same informacje).
Puddletag oferuje oczywiście zupełnie podstawową funkcję, jaką jest zmiana tagów w zaznaczonym pliku. Należy jednak mieć na uwadze, że wprowadzone zmiany nie są zapisywane automatycznie, a zaznaczenie innego pliku spowoduje utracenie zmian — puddletag nie zapyta, czy je zapisać. Jest to celowe i dość sensowne zachowanie, jednak wymaga zmiany przyzwyczajeń od osób używających głównie EasyTag, w którym zmiany wprowadzone do pojedynczych plików są zapamiętywane i utracone dopiero przy zmianie katalogu (chociaż EasyTag może wtedy pytać, czy zmiany zapisać czy odrzucić). Można co prawda włączyć tryb Preview mode, w którym zmiany są zapamiętywane i zapisywane dopiero na żądanie, jednak trzeba się liczyć z tym, że wtedy zapisywanie zmian odbywa się za pomocą innej pozycji w menu (i innego skrótu klawiszowego); ponadto w trybie Preview nie można usuwać tagów (i mam na myśli ich usuwanie, a nie zastępowanie ich wartości pustym ciągiem znaków).
Jednak tak banalną funkcję oferuje również wiele zwykłych odtwarzaczy muzyki, więc nie może ona przemawiać na korzyść puddletaga. Program ten jednak oferuje szereg znacznie bardziej zaawansowanych funkcji. Poniżej opisuję trzy z nich. Opis nie jest w żadnym wypadku kompletny, gdyż sam jeszcze nie poznałem wszystkich możliwości tej aplikacji; i szczerze mówiąc wątpię, bym w ogóle potrzebował ich wszystkich.
Pierwszą wartą uwagi funkcją jest masowe tagowanie na podstawie nazwy pliku (uwzględniając katalogi). Mając kolekcję muzyki uszeregowaną w katalogi, jednak z bałaganem w tagach, wystarczy w specjalnym oknie wpisać schemat nazwy pliku i zlecić masowe tagowanie. Puddletag sam wpisze odpowiednie tagi.
Druga funkcja działa podobnie, jednak jakby w drugą stronę — na podstawie wypełnionych tagów program może zmienić nazwę pliku i/lub umieścić go w odpowiednim katalogu. Pozwala to w prosty sposób opanować sytuację, w której cała masa plików muzycznych znajduje się w jednym katalogu. Umożliwia też zmianę struktury katalogów kolekcji muzycznej, jeżeli zajdzie taka potrzeba. Przykłady można znaleźć w dokumentacji. Warto zauważyć, że w przypadku tej funkcji na tagach można wykonywać również szereg wbudowanych procedur. W dużej mierze użytkownika ogranicza tylko wyobraźnia.
Trzecią możliwością puddletaga, którą chciałbym bardzo krótko przedstawić, są funkcje. Aplikacja oferuje cały szereg wbudowanych procedur do zmiany tagów. Tak naprawdę opisane powyżej zadania to nic innego jak właśnie wbudowane funkcje. Prócz nich jest jeszcze jedna do automatycznego numerowania, zamiany ciągu znaków (także w wersji obsługującej wyrażenia regularne!) czy zamiany wielkości znaków (z dowolnie określonym separatorem, choć musi być on jednoznakowy). To tylko kilka wybranych spośród znacznie większej liczby. Co więcej, funkcje można grupować w akcje, dzięki czemu nawet pracochłonne, ale powtarzalne działania można sprowadzić do kilku kliknięć.
Puddletag niedawno został umieszczony w repozytorium Debiana i aktualnie znajduje się tylko w gałęzi niestabilnej. W skróconym opisie pakietu stwierdzono, że jest to „prosty” (ang. simple) program. Nie należy dać się zwieść tej informacji. Puddletag jest potężnym narzędziem, którego opanowanie wymaga trochę czasu. Na szczęście pomocna okazuje się bogata dokumentacja. Trzeba jednak pamiętać, że puddletag posługuje się trochę odmienną logiką niż EasyTag, więc jego opanowanie będzie również wymagało pewnej zmiany przyzwyczajeń od osób, które już przywykły do EasyTaga. Niemniej myślę, że wysiłek ten może się opłacić.
Na koniec parę zrzutów ekranów, jeżeli ktoś koniecznie ich potrzebuje i jeszcze nie zdążył zobaczyć.
Komentarze
Kiedyś też szukałem takiego narzędzia i jedyne, co znalazłem to ExFalso (rozprowadzany z QuodLibet), który jednak zupełnie mi wystarcza. Oczywiście po zainstalowaniu pluginu 'musicbrainz', bo to dla mnie podstawowa funkcjonalność zapewniająca porządek w opisach.
Może kiedyś i to Puddletag spróbuję, bo widzę że też obsługę Musicbrainz ma…
Fajny, tekstowy szablon, ale w recenzji programu przydałyby się jego zrzuty ekranu.
A ma ściąganie tagów z FreeDB/CDDB?
Jajcuś: ExFalso chyba, tak jak QuodLibet, wykorzystuje GTK+? Gdybym chciał aplikację wykorzystującą GTK+, to bym nadal używał EasyTag, który jest naprawdę bardzo fajny.
A swoją drogą, puddletag ma funkcję importowania biblioteki muzycznej z QuodLibet. Nie wiem po co i czy jest to przydatne, gdyż sam QuodLibet nigdy nie używałem, ale może dla Ciebie będzie to jakiś dodatkowy argument.
Grzegorz: dzięki za opinię, ale… patrz ostatnie zdanie wpisu. Zrzutów ekranu nie ma u mnie, ale ich znalezienie nie wymaga jakiegoś ogromnego wysiłku. Myślę że każdy choć odrobinę zainteresowany sobie z tym poradzi.
Marsjanin: FreeDB jest w panelu „Tag Sources”. Ja z tego nie korzystam, więc nie potrafię powiedzieć, czy i jak działa. Zobacz http://puddletag.sourceforge.net/source/tagsources.html#using-freedb
Znaczy ma - duży plus. :) Ale ja i tak pozostanę przy Foobarze... :)
Zaskakujące, ale ten podobno zaawansowany program obsługuje zaledwie kilka pól w tagach. Gdzie np. takie praktycznie niezbędne pozycje jak “dyrygent” czy ”kompozytor”??? Być może można to sobie samemu zdefiniować według jakiejś dokumentacji z neta ale mnie się jakoś nie chce kombinować, skoro program kid3 oferuje mi to bez tracenia czasu. Ogólnie Puddletag zapowiada się ciekawie ale na dzień dzisiejszy nie jest jeszcze gotowy do normalnego użytku.
Rafał: Edit → Preferences → Tag Panel. Możesz dodać wszystkie tagi jakie sobie wymarzysz, nawet jakieś zupełnie niestandardowe.
Poza tym osobiście uważam, że warto sobie włączyć panel „Stored Tags”, w którym jest podgląd wszystkich tagów w danym pliku. W ten sposób można również dowiedzieć się, jak nazywają się konkretne poszukiwane tagi (bez zaglądania do dokumentacji ID3v2).
Sądzę, że możliwość dowolnej zmiany tagów udostępnionych do edycji (w „Tag Panel”) raczej potwierdza, niż zaprzecza tezie o zaawansowaniu opisywanego programu. Ale również jeżeli jesteś w pełni zadowolony z tego, co oferuje Tobie kid3, to nie widzę powodu żebyś w ogóle miał zaprzątać sobie głowę puddletagiem :) .