poniedziałek, 30 czerwca 2014

MPD, alsa i dwie karty dźwiękowe

Aby ustawić dwie karty dźwiękowe, którymi można sterować wspólnie, należy w pliku /etc/mpd.conf zainteresować się sekcją output:

audio_output {
        type            "alsa"
        name            "ALC662"
        device          "hw:0,0"        # optional
#       format          "44100:16:2"    # optional
        mixer_device    "hw:0"  # optional
        mixer_control   "PCM"           # optional
#       mixer_index     "0"             # optional
}

audio_output {
        type            "alsa"
        name            "SB"
        device          "hw:1,0"        # optional
#       format          "44100:16:2"    # optional
        mixer_device    "hw:1"          # optional
        mixer_control   "Digital"       # optional
#       mixer_index     "1"             # optional
}
Powyższy przykład to konfiguracja dla wyjść dwóch kart dźwiękowych: wbudowanej snd-hda-intel (ALC662) oraz Sound Blaster na PCI.  Na uwagę zasługują mixer_control. Najwygodniej wybrać odpowiednią kontrolkę bawiąc się alsamixer.

Aby mieć pewność, że dana karta będzie miała numerek 0, 1 itd.:
options snd_ctxfi      index=1
options snd_hda_intel  index=0
w /etc/modprobe.d/alsa-base.conf.

poniedziałek, 23 czerwca 2014

Dodawanie czarnego paska do wyświetlanego ekranu

Po upadku laptopa (Asus eeePC 900) część ekranu przestała odpowiadać (kolorowe 3-4cm paska po prawej stronie ekranu. Laptop może być jeszcze (jakoś) użyteczny, ale mało wygodne jest przesuwanie ciągle okien. Rozwiązaniem problemu może być xrandr:
xrandr --fb 824x600 --output LVDS1 --mode 1024x600
Po takiej komendzie program wyświetla komunikat o jakichś błędach oraz informację, że wirtualny pulpit (824x600) jest za mały by zapełnić ekran (1024x600), ale wyświetla jak należy.

Rozwiązanie zainspirowane tym postem.

poniedziałek, 16 czerwca 2014

Konwertowanie dokumentów do pdf i pdf do jpg/png

Gdy potrzeba skonwertować dokument czy prezentację do pdf, wystarczy:
unoconv -f pdf presentation.odt
 Źródło.

Aby przerobić pdf na serię obrazów, najlepiej jest skorzystać z starego, dobrego convert
 convert -density 300 file.pdf file.png
Przy okazji przydatnym może być obracanie dokumentów pdf:
pdftk nonrotated.pdf cat 1-endW output rotated.pdf 
Źródło.

środa, 11 czerwca 2014

Wydajność i zużycie energii APU AMD (sterowniki OpenSource)

Walczę sobie (więc post będzie zmieniany) z efektywnością karty AMD na sterownikach OpenSource.

Godne zauważenia nim zaczniemy działać:

Wg. wiki Gentoo:
echo "low" > /sys/class/drm/card0/device/power_profile
i inne ustawienia nie mają praktycznego (korzystnego) wpływu na działanie APU (sic!). Lepiej korzystać z:
sudo su
echo "performance" > /sys/class/drm/card0/device/power_dpm_state
Gdzie performance może być zastąpione przez battery lub balanced. Wygodniej jest, oczywiście, użyć jakiegoś apletu. W wypadku KDE: Radeon Dynamic Power Management, który pozwala na sterowanie i jednym i drugim (choć użytkowników APU interesuje głównie Radeon DPM State.

Należy pamiętać o nadaniu odpowiednich praw, odpowiednim plikom! Do pliku /etc/rc.local dodajemy: 
chmod a+w /sys/class/drm/card0/device/power_dpm_force_performance_level
chmod a+w /sys/class/drm/card0/device/power_dpm_state


[miejsce na xorg'a]




Dotychczasowe efekty pracy nad tym wszystkim - wydajności.
wszystkie testy phoronix-test-suite run-test pts/gputest, test pierwszy, natywna rozdzielczość. Wiem, że jeden test to bardzo mało, ale zawsze coś, nie?

Póki co, wynik prezentuje się tak:
AMD 214 : OpenSource 213

Sterowniki do AMD wreszcie na poziomie... ale te OpenSource

Szczęśliwie, szukając czegoś tam, trafiłem na tę stronę: link.

Przeczytać na niej można o poważnej poprawie w wydajności otwartych sterowników do kart ATI/AMD.

Na początek porównanie wydajności:
[Obraz ze strony wspomnianej na początku]

Jak widać, w zależności od karty może być gorzej, trochę gorzej ale nawet i lepiej.

Potencjał jest, a już teraz można się zacząć poważnie zastanawiać nad przejściem na otwarte sterowniki. Co też zrobiłem. 
 
Jak to zrobić?

Na początek należy zadbać o to by jądro naszego systemu było stosunkowo młode, tj. minimum 3.13 (u mnie 3.14.4). W jego poszukiwaniu trafiamy tu. Wybieramy wersję, zapisujemy odpowiednie paczki i instalujemy sudo dpkg -i *.
Następnie aktualizacja paczek Xorg i sterowników. W naszych repo paczki są dość 'stare' trzeba zatem znaleźć takie, które są 'aktualniejsze'.
sudo add-apt-repository ppa:oibaf/graphics-drivers
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
Autor oryginalnego artykułu sugeruje instalację Xorg-edgers, ale to zostawmy dla tych, którzy są ryzykantami (ja musiałem obniżyć wersję, z powodu niskiej wydajności).

Następnie, wg. producenta sterowników:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libg3dvl-mesa
sudo apt-get install mesa-vdpau-drivers

(zalecam przejrzenie synaptca w poszukiwaniu interesujących nas dodatków)

Reboot i trzymamy kciuki, żeby działało.

Wady:
Poza oczywistą (niekoniecznie!) niższą wydajnością (w moim wypadku porównywalną, ale na podstawie niewielkiej ilości testów) należy tu wspomnieć poważniejsze grzanie się grafiki (w wypadku laptopów sprawa jest dość namacalna) oraz większe zużycie energii.
Są to rzeczy raczej do przełknięcia.

W moim przypadku jest jednak coś więcej znacznie mi doskwierającego: po wybudzeniu komputera (suspend to ram), ekran (i tylko ekran!) się nie włącza - wciąż szukam rozwiązania. No, ale to i tak lepsze niż sytuacja (jak ze sterownikami od AMD), gdy komputer generalnie się nie wybudzał lub nie usypiał, gdzie pozostawał twardy reset.

niedziela, 8 czerwca 2014

Mulący Firefox

Od dłuższego czasu borykam się z mulącymi przeglądarkami.

Wyświetlanie, a przede wszystkim przewijanie w FF potrafi być przerażająco wolne (fb, allegro), okazuje się, że problemem (znowu) okazuje się AMD. Wg. tematu na supporcie mozilli, należy w takim przypadku wyłączyć akcelerację sprzętową w FF:

Preferencje> Zaawansowane > Ogólne > Korzystaj z akceleracji sprzętowej, jeśli jest dostępna

Okazuje się, że wszystko wraca do normy BEZ akceleracji sprzętowej AMD.

poniedziałek, 2 czerwca 2014

Profilowy .cache do RAM'u

Nie wiem czy mam źle skonfigurowany dysk SSD czy Firefox jest po prostu strasznym zamulaczem dysków, wiem na pewno że są takie momenty gdy zamulanie jest ciężkoznośne. Pomyślałem więc: rzućmy cache na ram (kiedyś jak miałem Asusa z WOLNYM dyskiem SSD, gdzieś była zapodana taka koncepcja).

Po chwili zastanowienia: rzućmy cały folder .cache na ram! Wiadomo [źródło], że folder cache FF znajduje się tam właśnie, więc można przenieść go lub go z całym cache.

Niezależnie od opcji robimy to tak [źródło] - w pliku /etc/fstab dopisujemy linijkę
tmpfs /home/someuser/.cache tmpfs defaults,size=512M 0 0
gdzie /home/someuser/.cache to folder, który chcemy przenieść na ram (raczej dowolny) a size=512 to pojemność wirtualnego dysku.

Mniej elegancko można to zrobić tak:
rm ~/.cache -r 
ln -s ~/.cache /dev/shm
Na koniec dodam, że można to zrobić też w samym FF:

W FF wpisujemy w pasku adresu about:config i ustawiamy:
browser.cache.disk.enable na "false" (dwuklik)
browser.cache.memory.enable na "true" (domyślne)
tworzymy wpis browser.cache.memory.capacity i ustawiamy wedle uznania lub na -1 - automatycznie.