Trzy dni temu zauważyłem dziwną rzecz: mając uruchomiony odtwarzacz muzyki np.deadbeef – nie działa mi dźwięk w chromium, firefox czy innej aplikacji np. vlc. I analogicznie do reszty, mając włączoną przeglądarkę, gdzie jest głos z teledysku na stronie, nie słyszę muzyki w programie.
Wcześniej albo tego nie zauważyłem, albo działało to inaczej.
Ale zaraz po zauważeniu tego mankamentu w Arch linux, postanowiłem to jakoś zmienić.
Pierwsze kroki to: przeinstalowanie alsa-utils i alsa-oss. Nie zadziałało…
Drugie podjęte kroki to: skasowanie alsa-xxx i podległe jej programy w systemie z plikami konfiguracyjnymi i instalację od nowa. Nie pomogło…
trzecim krokiem było: wyszukanie pulseaudio i podjęcie konfiguracji systemu pod ten system dźwięku.
Dlaczego trzecim krokiem było przejście na pulseaudio?
Ponieważ konfiguracja alsa, edycja plików i instalacja – nie pomogły.
Nie chciało mi się też szukać rozwiązania i dochodzić do tego, dlaczego dźwięk działa mi w KDE jak działa.
Ale zauważyłem pewną rzecz, która występuje w KDE, i która mnie zdziwiła?
Jak system dźwięku może opierać się na programie do wyświetlania filmów, czy obsługi innych multimediów? – tego nie potrafię zrozumieć.
Przechodząc do dalszej części mojej przygody z dźwiękiem w KDE lub arch linux, ponieważ wina może leżeć po stronie pulpitu, a nie dystrybucji i alsa.
Ale że przesiadłem się z gnome na KDE, muszę się zmagać z tym, że tu inaczej coś zostało rozwiązane, niż w gnome.
Więc pierwsze co zrobiłem to: skasowałem xine-phonon
niech gstreamer się zajmie obsługą wyświetlania dvd czy innych rzeczy, jak mp3.
Drugą rzeczą było: zainstalowanie pulseaudio i konfiguracja plików, z dodaniem pulseaudio do /etc/rc.conf
Trzecią rzeczą było: pozostawienie alsa-utils i skasowanie alsa-oss, jak i instalacja alsa-plugins
Po restarcie okazało się, że nie jest może idealnie, ale teraz mogę słuchać muzyki, przeglądać youtube i odtwarzać, jak i oglądać film – i mieć z każdego programu dźwięk jednocześnie.
Ta sytuacja cieszy mnie, ponieważ miałem jeden cel: poprzednio użytkując chromium lub firefox4beta8 – nie miałem dźwięku od innych programów, czyli też skype. A przecież to jest chore, kiedy odchodzę od komputera, słucham muzyki i nawet nie wiem, że ktoś się do mnie dobija, lub że ktoś dzwoni, bo nie słyszę tego.

Ale zainstalowanie pulseaudio nie zepsuło mi dźwięku w programach, raczej przywróciło. Nie skasowałem całkiem alsa, raczej pozwoliłem aby ona wspomagała działanie pulse. Skasowałem alsa-oss, które nie było mi potrzebne w systemie i nie wiem czy nie powodowało konfliktów.
Obecnie samo KDE nie potrafi uruchomić (czyt. odtwarzać dźwięków), ale programy tak – więc to co chciałem osiągnąć, to osiągnąłem 🙂

I jeśli czytają mnie osoby użytkujące Ubuntu, i które mają problemy z dźwiękiem.
Patrząc na moje problemy w Arch linux z dźwiękiem, mogę przypuszczać że podobne problemy występują w Ubuntu.
Wiele użytkowników po aktualizacji Ubuntu, skasowało lub kasuje pulseaudio. Konfigurację, którą podjęli wcześniej działa lub działała właściwie kiedy użytkowali system w poprzednich wersjach.
Ale Ubuntu opiera się na Pulseaudio, nie na alsa, nie na alsa-oss, oss, czy innym sterowniku dźwięku.
Trzeba to brać pod uwagę, że kasując pulseaudio tracimy możliwość regulacji z poziomu przycisków funkcyjnych w laptopie, że nie będziemy mogli używać menu dźwięku na panelu, że wiele programów przestanie właściwie odtwarzać dźwięk. Trzeba się z tym pogodzić, lub powrócić do Pulseaudio 🙂
Pierwsza rzecz, po skasowaniu pulseaudio to zainstalowanie alternatywnego miksera, to podstawa!
Druga rzecz, to konfiguracja plików w systemie…
Trzecia rzecz, to podniesienie (czyt. ustawienie mocy dźwięku) na większym niż „zero”.
Ponieważ w wielu przypadkach, to właśnie ten mankament sprawia, że nic nie słyszymy, choć wykonaliśmy już prawie wszystko – w systemie, a dźwięku nie ma. Czasami choć wskaźnik pokazuje nam, że jest wysoko – warto dać go na „zero” i podnieść do samej góry. Ubuntu w kolejnych wydaniach pulseaudio jak i gnome-media zablokowało inne sterowniki dźwięku, jak i utrudniło życie osobą, które nie chcą użytkować pulseaudio w swoim Ubuntu.

Co warto napisać i zaznaczyć: Pulseaudio w obecnej chwili spisuje się dobrze w Ubuntu, mowa o wersji 10.04, 10.10. Nie zauważyłem, aby dźwięk się haczył, przycinał, zawieszał. Jedyny problem to skype, który radzi sobie z pulseaudio – topornie i powodując frustrację u wielu osób, z którymi rozmawiamy. Ale tak było od początku i tak będzie, do momentu kiedy skype nie wyda wersji 5.0 na system linux, może wtedy coś się zmieni.

——
Teraz napiszę mały poradnik: jak przejść z alsa na pulseaudio w Arch linux, jak i odwrotnie.
Użytkownicy dystrybucji Ubuntu, mogę te kroki obserwować i sprawdzać, jak u nich wyglądają dane pliki konfiguracyjne – co może rozwiązać, choć nie musi, problemy ze skasowaniem pulseaudio i przejściem na alsa.
Dlaczego piszę ten poradnik, oraz na co zwrócić uwagę: ponieważ arch linux opiera się na alsa i działa w oparciu o alsa, Ubuntu zaś działa w oparciu o pulseaudio…

Alsa >> pusleaudio
kasujemy alsa-oss (sudo pacman -Rns alsa-oss)
-Rns oznacza, że zostaną skasowane wszystkie pliki konfiguracyjne i podległe paczki.
pozostawiamy w systemie: alsa-utils.
Jeśli chcemy wyłączyć głośnik systemowy (nie zależne od alsa i pulseaudio):
edytujemy /etc/rc.conf i wstawiamy w MODULE dwie pozycje: !pcspkr i !snd-pcsp
MODULES=(... !pcspkr !snd-pcsp ...)
aby wyglądało jak powyżej, oczywiście „…” oznaczają inne moduły, które włączamy lub blokujemy.
Teraz instalujemy pulseaudio:
sudo yaourt -S pulseaudio cpaprefs pavucontrol pavumeter alsa-plugins
Po instalacji, zajmujemy się konfiguracją plików:
w pliku: /etc/modprobe.d/modprobe.conf
kasujemy: options snd-intel8x0 index=0
pozostawiając: options snd-pcsp index=1
i czyścimy plik: ~/.asoundrc – ja w nim nic nie mam.
Edytujmy plik: /etc/asound.conf – dodając:
pcm.pulse {
type pulse
}
ctl.pulse {
type pulse
}
pcm.!default {
type pulse
}
ctl.!default {
type pulse
}

Teraz wklejamy to polecenie w terminal: sudo rmmod snd-pcm-oss
Po tej czynności instalujemy kilka rzeczy przydatnych w systemie:
sudo yaourt -S gstreamer0.10-pulse libao-pulse
Po instalacji, wydajemy polecenie: start-pulseaudio-x11

Nie muszę pisać, że aby pulseaudio zadziałało w vlc musimy doinstalować vlc-pulse-plugin itd.

Problemy z dźwiękiem w Pulseaudio mogą wynikać ze złej konfiguracji.
Warto przetestować jedną zmianę:
edytujemy jako root (przez su lub sudo) plik: /etc/pulse/daemon.conf
znajdujemy linijkę: default-sample-rate = 44100 i zmieniamy wartość 44100 na 48000. Wykonujemy restart i sprawdzamy jak nam działa dźwięk.

Wykonanie tych czynności sprawiło, że jak już napisałem – programy nie blokują się wzajemnie, dźwięk działa równocześnie we wszystkich programach, tylko system protestuje – ale to mi nie przeszkadza 🙂 jak zacznie mi to doskwierać, zacznę szukać rozwiązania.

Pulseaudio >> alsa
Kasujemy pulseaudio: sudo pacman -Rns pulseaudio gstreamer0.10-pulse libao-pulse i zależności.
Instalujemy: alsa-oss
Teraz kasujemy zawartość: ~/.asoundrc i wklejamy:
defaults.ctl.card 1
defaults.pcm.card 1
defaults.pcm.device 1

teraz edycja: /etc/rc.conf – kasujemy pulseaudio (które powinno się uruchamiać bez dodawania go do DAEMONS=(…) ) i dodajemy alsa w miejsce pulseaudio w DAEMONS.
w terminalu wpisujemy: sudo modprobe snd-pcm-oss
oczywiście warto wykonać restart.

I to chyba wszystko…

Użytkowników Ubuntu może zdziwić to, ile ustawień jak i konfiguracji wymaga przejście z jednego sterownika dźwięku na drugi w Arch linux, ale dzięki temu się uczę cały czas 🙂
I dodam jeszcze, że osoby mające problem z dźwiękiem w Ubuntu, powinny przejrzeć sobie pliki opisane wyżej, czyli:
~/.asoundrc
/etc/pulse/daemon.conf (jeśli posiadamy pulseaudio, a dźwięk nie działa za dobrze.
/etc/asound.conf
…co się w nich znajduje i czy występują w systemie.
Może to rozwiązać wiele problemów 🙂

Advertisements

5 myśli na temat “pulseaudio zamiast alsa – arch linux

    1. Mój problem, albo nie został przez mnie zauważony, bo przesiadywałem na e17, albo był nie świadomie ignorowany. Obecnie wszystko mi działa jak ma działać z Arch-u 🙂 z Alsa (choć jest w systemie i Pulseaudio się do niej odwołuje, to jednak lepiej mi działają programy. Więc nie mam zamiaru nic zmieniać i kolejny raz przechodzić przez pasmo braku dźwięku, bo ustawienia nic nie dały.

      Lubię to

  1. Mam archlinuksa. Nie mam żadnych problemów z dźwiękiem. Nie jest prawdą, że archlinux opiera się na alsie i działa w oparciu o alsę. W archlinuksie instaluje się tylko to, co się chce. Jeśli w ogóle wymagana jest alsa lub pulseaudio, to tylko przez środowisko graficzne, które przecież nie jest archlinuksem.
    Artykuł przydatny, ale sugeruje wadliwe działanie archlinuksa.
    I jeszcze uwaga. KDE z archlinuxem? A co z zasadą KISS? To na niej, a nie na alsie opiera się archlinux.

    Lubię to

    1. Tu muszę z tobą nie zgodzić. Ponieważ Alsa jest wymagana do dźwięku w programach, korzystają z niej programy do słuchania muzyki, programy do oglądania filmów, a nawet przeglądarki.
      A to wszystko dlatego, że baza programów korzystających z alsa jest dużo większa, niż programów które potrafią działać w odniesieniu do oss.
      http://www.archlinux.org/packages/extra/x86_64/alsa-lib/
      Po prawej jest lista programów, które korzystają z tej biblioteki. Instalując choćby jeden z nich i tak zmuszasz się do zainstalowania libalsa. Z drugiej strony alsa ma wtyczkę do oss: alsa-oss – więc nie ma problemu z korzystania z oss, posiadając alsa w systemie.

      Alsa weszła strukturę jądra dlatego, że twórcy jądra (developerzy) stwierdzili, że oss jest przestarzały. I tym sposobem zmuszono wszystkich do korzystania z Alsa.
      wiki: OSS był wykorzystywany w jądrze Linux jako standardowy system obsługi dźwięku w wersjach do 2.4 włącznie. Od wersji 2.5 dodano do jądra drugi system obsługi dźwięku ALSA, a Linuksowa implementacja OSS została uznana za przestarzałą.

      Dlatego w archu alsa to podstawa, zaś pulseaudio to pomocnik, który ma organizować i niwelować błędy alsy np. brak dźwięku w skype, kiedy oglądamy w przeglądarce filmik na youtube – stary i chyba już zniwelowany błąd.

      I taka uwaga, alsa została wdrożona do jądra, podobnie jak i oss. A więc, chcąc posiadać dźwięk i tak musimy się zdecydować, albo na alsa, albo na oss i tu nie ma nawet co rozmyślać. Ponieważ w tym przypadku decyzja już ostała podjęta, jeśli ktoś chce nawet po przez terminal posłuchać sobie muzyki…

      Lubię to

  2. stary mam problem ale cos mi nie ida twoje komendy. mozesz sie odezwac na gadu??
    /moj nr 1123271/ walcze z tym od 2dni i nie daje rady.

    Lubię to

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Log Out / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Log Out / Zmień )

Facebook photo

Komentujesz korzystając z konta Facebook. Log Out / Zmień )

Google+ photo

Komentujesz korzystając z konta Google+. Log Out / Zmień )

Connecting to %s