muzyczny applet – audacious+genmon+embed+c.a.v.a.

Jesteś nowy na forum? Przeczytaj ...

Home Fora Środowiska graficzne XFCE muzyczny applet – audacious+genmon+embed+c.a.v.a.

Oglądasz 1 post (z 1 ogółem)
  • Autor
    Posty
  • #850
    Terkaz
    Forumowicz

    Screen
    W linuxie zawsze brakowało mi tego, co miał winamp i ma aimp – czyli minimenu pojawiające się po zminimalizowaniu programu. Można oczywiście ustawić sobie skróty, co jest wygodne – ale niektórzy lubią sobie kliknąć :) Poniżej przedstawię zwięźle moją próbę zaspokojenia tej potrzeby.

    W projekcie wykorzystano:

    audtool narzędzie dostarczane z audacious (dostępny w repozytorium)
    narzędzie pozwala na sterowanie odtwarzaczem z poziomu terminala, potrafi dostarczyć też szereg informacji o odtwarzanym utworze, a także o całej playliście

    xfce4-genmon-plugin dostępny w repozytorium
    wtyczka pozwala na okresowe wywoływanie poleceń i skryptów bash oraz wyświetla zwracaną wartość w czterech możliwych postaciach: obrazu, [txt] tekstu, [tool] tekstu podpowiedzi, [bar] słupka procentowego (0-100), a także wykonuje komendę po kliknięciu w obrazek [click]. W jednej instancji genmona nie można wyświetlić dwóch takich samych typów (2x, 2x[txt]…). Ponadto typy są wyświetlane zawsze w tej samej kolejności tzn. >[txt]>[bar]

    xfce4-embed-plugin dostępny w aur
    wtyczka pozwala na osadzanie każdego okna Xfce w panelu i taki program w oknie będzie działać, pod warunkiem że program jest dostosowany do pracy w małym oknie (innaczej się wysypie). Wtyczka wyszukuje okno które chcemy osadzić za pomocą kryteriów: nazwa procesu, klasa okna, tytuł okna (najskuteczniejsza metoda). Wtyczka potrafi wywołać nasze polecenie jeśli nie znajdzie żadnego okna.
    Nie polecam pozwalać wtyczce uruchamiać dużych programów – wtyczka ma tendencje do powielania procesu (w menadżerze zadań miewam do 3 instancji tego samego programu)

    cava dla korzystających z alsa dostępna w aur, dla pulseaudio co najmniej wersja 0.4.0
    lekki wizualizer w postaci słupków działający w terminalu. W pliku konfiguracyjnym ~/.config/cava/config pod działem [input] należy odchaszować (w sensie od-„;” :) ) „method = pulse” i „source = NASZA KARTA” (można sprawdzić dostępne opcje poleceniem pacmd list-sources, albo uruchamiając projectM przez terminal, jeśli mamy już skonfigurowany). Są tam też ustawienia wizualne tj. szerokość, odstęp, ilość, kolor słupków, oraz ustawienia zachowania tj. odświeżanie, czułość, zakres, grawitacja (przyspieszenie opadania słupków) itd.

    imagemagic – dostępny w repozytorium, narzędzie terminalowa do modyfikacji obrazów

    Jak widzimy na screenie applet składa się z (wyliczając od góry):
    3x Generyczny monitor – czyli instancje wtyczki genmon wykonująca skrypt 1.sh (okładka i tytuł), 2.sh (album), 3.sh (wykonawca), bez etykiety, odświeżanie co 3 sekundy, położenie skryptów bezwzględne (nie czai „~/”)
    5x Aktywator, czyli przyciski do sterowania playerem:

    • audtool playlist-reverse
    • audtool playback-stop
    • audacious -t – tu inaczej ponieważ chcę uruchamiać audacious jeśli jeszcze nie jest uruchomiony
    • audtool playlist-advance
    • audtool jumptofile-show

    2x genmon – 4.sh (pasek postępu – co sekundę), 5.sh (status programu)
    Osadzanie okien – czyli embed. Filtr ustawiony na uxterm (tytuł okna), polecenie uxterm cava, minimalny rozmiar 100, nie rozciągaj, bez etykiety, wyświetl uchwyt. Po restarcie systemu trzeba będzie przeładowywać embed dwukrotnie klikając na wtyczkę.
    Reszta panelu

    Jak widzicie cavę umieściłem w uxtermie, którego normalnie do niczego nie używam. Normalnie jednak uxterm tło ma białe – by to zmienić modyfikujemy plik ~/.Xresources dodając:

    UXTerm*background:         #1E1E1E
    UXTerm*foreground:         white
    UXTerm*cursorColor:        white

    i stosujemy zmiany wykonując polecenie w terminalu xrdb -merge ~/.Xresources

    Genmon – skrypty
    Mój skrypt to modyfikacja skryptu dle Conky’go Anjishnu Sarkar’a.

    Rozmieszczenie plików:
    ~/audacious_info.sh – główny skrypt zawierający wszystkie funkcje
    ~/.audacious_info/1.sh – okładka, tytuł i podpowiedź
    ~/.audacious_info/2.sh – album, podpowiedź
    ~/.audacious_info/3.sh – wykonawca, podpowiedź
    ~/.audacious_info/4.sh – pasek postępu, podpowiedź
    ~/.audacious_info/5.sh – status programu, podpowiedź
    ~/.audacious_info/6.sh – artysta-album-tytuł, podpowiedź
    ~/.pix/band.jpg – domyślna okładka w rozmiarze 220×220
    ~/.pix/folder.jpg – zmniejszona okładka gotowa do wyświetlenia
    ~/.pix/resize.jpg – skopiowana wyszukana okładka, zmniejszona do rozmiaru 220×220
    ~/.pix/tytuł.txt – plik służący do przechowywania tytułu utworu w celu oceny, czy po 3 sekundach nie zmienił się utwór i czy należy wyszukać nową okładkę. Powinien mieć tylko jeden wiersz.

    Całość w jednym archiwum

    Można i bez kombinowania (tyle że nie przetrwa restartu – wszystkie okna mają ten sam proces, tą samą nazwę i klasę okna):
    Screen2

Oglądasz 1 post (z 1 ogółem)
  • Musisz być zalogowany aby odpowiedzieć w tym wątku.