#alsa

0
2

#linux #pytanie #pulseaudio #alsa

Jest jakas różnica dźwiękowa miedzy pulseaudio, a alsa? Z tego co zaobserwowałem to raczej nie ma przy słuchaniu muzyki z youtube. Fizycznie kilka razy sobie tylko sprawdziłem, to alsa zużywa więcej zasobów.

#dzwiek #muzyka #efektydzwiekowe

#pytaniedoeksperta

nicram

@Adamus89 Nie bo PulseAudio używa ALSA by odtwarzać dźwięk. ALSA to sterowniki do kart dźwiękowych i ich obsługa. A PulseAudio to jakby serwer do przetwarzania dźwięku, który po swojej robocie wysyła wynik do ALSA (a ona do sprzętu swoimi sterownikami). To jest w ogóle mega ciekawe, bo zanim pulseaudio stało się popularne w niektórych dystrybucjach była często sama ALSA i jakiś podstawowy soft do miksowania dźwięku. I np. pamiętam moje zdziwienie, kiedy nie dało się odtwarzać z 2 programów na raz (bo ALSA nie umie mixować). PulseAudio właśnie miksuje dźwięk (łączy) z różnych źródeł żeby takich problemów nie było (ale umie tez przesyłać dźwięk po sieci inne takie tam bajery).

fervi

@nicram Alsa chyba potrafiła Miksować, OSS na pewno nie potrafiło, ale no ... nie dam sobie uciąć do z ALSA

nicram

@fervi Mogło mi się z jakimś BAS pomieszać, ale mogła to być tez jakaś stara wersja (bo ja sam stary już jestem i na różnych OS-ach działałem, bo i BeOS i QNX, i inne dziwnoty).

Adamus89

@inskpektor @szczekoscisk myslalem, ze to jest odrebne i niezalezne jak np. xorg i wayland czasami jak instalowalem archa to sobie wybieralem menagerara dzwieku pulse audio badz alsa,,, niby alsa jest lepsza, ja nie slysze roznicy,,,

Catharsis

@Adamus89 Hmm zacznijmy od tego, że nie rozumiesz czym są obie te rzeczy przez co to pytanie nie ma sensu.


ALSA - Bezpośrednio komunikuje się z jądrem systemu i poprzez posiadane sterowniki do kart dźwiękowych potrafi odtwarzać na nich dźwięk. Dodatkowo wystawia interfejs API dla innych aplikacji tak aby te mogły poprzez jej bibliotekę używać tych kart dźwiękowych. ALSA jest bardzo ograniczona pod względem funkcji i jej główne zastosowanie to po prostu bycie sterownikiem dźwięku i łączenie oprogramowania z urządzeniami audio.


PulseAudio - To jest server audio który ułatwia konfiguracje i zarządzanie dźwiękiem z aplikacji na komputerze. ALSA zapewnia tylko podstawowe funkcje i np tak jak wyżej pisali miksowanie wielu ścieżek audio na raz i np niezależna zmiana ich głośności była by niemożliwa bez ręcznej implementacji przez jakiś inny program. I tutaj właśnie wchodzi PulseAudio które to wszystko ułatwia i służy jako taki pomost pomiędzy aplikacjami a ALSĄ tak aby ALSA zajmowała się tylko odtwarzaniem dźwięku. Dzięki temu programiści i użytkownicy mają zwyczajnie prościej.


I tutaj wchodzi jeszcze jedna rzecz, mianowicie:


PipeWire - PulseAudio jest już trochę wiekowe, zarzuca mu się słabą wydajność, duże opóźnienia itp. PipeWire powstało jako następca PulseAudio. Nie dość, że ma więcej funkcjonalności, obsługuje np, routing audio i MIDI co przyda się np profesjonalistom, to jeszcze do tego jest bezpieczniejszy, wydajniejszy i zwyczajnie szybszy. Oferuje pełną kompatybilność z aplikacjami napisanymi z myślą o PulseAudio więc zasadniczo o ile nie boisz się nowości to używanie PulseAudio nie ma żadnego sensu.


I jeszcze na koniec, odtwarzanie dźwięku przez każde z tych przy takich samych ustawieniach powinno brzmieć identycznie i nie może być żadnych różnic w dźwięku. Jeżeli słyszysz jakąś różnice tzn że gdzieś jakiś config coś zmienia. Dodatkowo, jeżeli narzut wydajności PulseAudio na twoim komputerze jest zauważalny to o ile nie schrzaniłeś czegoś w konfiguracji, nie wiem odpaliłeś jakieś najdokładniejsze opcje co do resamplingu itp to zwyczajnie masz złoma a nie komputer ponieważ na współczesnym sprzęcie zużycie systemu przez PulseAudio powinno być niezauważalne xD. Nie wiem wgl czemu zajmujesz się takimi błahostkami w 2k25 kiedy to wszystko jest skonfigurowane automatycznie na praktycznie każdym distro i chyba nawet skrypt instalacyjny Archa ma opcje do automatycznego zainstalowania PipeWire tak, że nie musisz robić z tym nic.


Dodatkowo jeszcze, jakbyś się zdecydował na to PipeWire to polecam taką aplikacje jak EasyEffects.


Na koniec masz jeszcze screena z użyciem systemu przez PipeWire na moim komputerze podczas odtwarzania pliku audio o bardzo wysokiej rozdzielczości i bitrate (96000 Hz 24bit 2728 kbps).

20b036bf-745b-49a8-8d87-ad8889440bfd

Zaloguj się aby komentować

Hej, są tu jacyś specjaliści od #linux #ALSA ? Potrzebuje "wymusić" ustawienie kanałów 5.1 na porcie HDMI (uparcie wykrywa mi tylko stereo - speaker-test rzuca dźwięk na kanał prawy i lewy, pozostałe kanały są opisane jako "UNKNOWN" i nie dają dźwięku), a nie mam pojęcia konfiguracji ALSA (chociaż coś kiedyś udało mi się złożyć do kupy w asound.conf).


System to LibreELEC, platforma Odroid C2 (wiem, antyk, ale chyba dźwięk 5.1 powinna wypchać?).


Na forum LibreELEC pytałem bez skutku, forum Odroida C2 jest jakby martwe.


#pytanie #pytaniedoeksperta #odroid

mrmydlo

Widzę że te same problemy co w 2007 jak jeszcze chciało mi się pi⁎⁎⁎⁎lić z red hatem xD

baklazan

@mrmydlo Odpal to na Odrodidzie C2 na Windzie, czytałeś w ogóle o czym @REXus pisze?

mrmydlo

@baklazan Bez znaczenia xD

dotevo

etc/asound.conf? co tam masz?

REXus

@ dotevo   to jest LibreELEC, takiego pliku nie ma. Za ustawienia ALSA odpowiada /usr/share/alsa/alsa.conf, dołączana jest zawartość /storage/.config/asound.conf (zresztą to widać w alsa.conf) - ten ostatni mogę edytować (LibreELEC jest tak zbudowane, że praktycznie cały system plików jest tylko do odczytu) i na ten moment jest pusty.

https://pastebin.com/rrFyH0qX - zawartość alsa.conf.

Catharsis

@REXus Sprawdź tutaj: https://wiki.archlinux.org/title/Advanced_Linux_Sound_Architecture/Troubleshooting


podpunkt 4.10.3 "HDMI 5.1 sound goes to wrong speakers". Idk ale wydaje mi się, że powinno pomóc, a jak nie to przeczytaj inne podpunkty też. Generalnie polecam zawsze sprawdzić arch wiki na dany temat zanim się gdzieś będziesz pytać o coś bo często tam jest odpowiedź.

Zaloguj się aby komentować