Zvok

Noob's Guide to Linux Audio ALSA, OSS in Pulse Audio Explained

Noob's Guide to Linux Audio ALSA, OSS in Pulse Audio Explained
Tako novi kot prekaljeni uporabniki Linuxa se lahko strinjajo v enem: zvok Linuxa je zmeden. Ne samo, da več tehnologij opravlja podobna opravila, ampak jih večina distribucij Linuxa in njihovih uporabnikov lahko popolnoma izpusti.

Situacija je razmeroma v redu, ko gre za običajne distribucijske sisteme, kot so Ubuntu, Debian ali Fedora, ker so se njihovi razvijalci zelo potrudili, da bi zvok deloval takoj, vendar tega ne moremo trditi za Arch Linux, Gentoo, in druge minimalistične distribucije, ki od uporabnikov pričakujejo, da vse konfigurirajo iz nič.

Ta članek vas ne bo naredil za strokovnjaka za zvok v Linuxu, vendar bo, upajmo, razložil osnovne tehnologije, ki skrbijo za to, da zvok prihaja iz zvočnikov, ko odprete video v YouTubu ali igrate igro v Steamu.

Napredna arhitektura zvoka Linux (ALSA)

Začnimo z najpomembnejšo plastjo zvoka za Linux, ALSA. ALSA, ki jo je leta 1998 ustanovil češki razvijalec programske opreme Jaroslav Kysela, je odgovoren za glas vseh sodobnih distribucij Linuxa. Pravzaprav je del samega jedra Linuxa, ki prek vmesnika za programiranje aplikacij (API) za gonilnike naprav zvočne kartice zagotavlja zvočne funkcije ostalim sistemom.

Prvotno zasnovo ALSA je v veliki meri navdihnil gonilnik naprave Linux za zvočno kartico Gravis Ultrasound, ki jo je izdelala kanadska Advanced Gravis Computer Technology in je postala zelo priljubljena na demo sceni v devetdesetih letih.

Podpora ALSA za vse vrste zvočnih vmesnikov, zahvaljujoč popolnoma moduliranim zvočnim gonilnikom, lahko hkrati upravlja do osem zvočnih naprav, dostopa do funkcionalnosti MIDI strojne opreme, izvaja strojno mešanje več kanalov in še več.

Uporabniki običajno sodelujejo z ALSA z uporabo alsamixerja, grafičnega mešalnega programa, s katerim lahko konfigurirate nastavitve zvoka in prilagodite glasnost posameznih kanalov. Alsamixer deluje v terminalu in ga lahko prikličete tako, da vpišete njegovo ime. Še posebej uporaben ukaz na tipkovnici se aktivira s pritiskom na tipko M. Ta ukaz preklopi utišanje kanala in je precej pogost popravek številnih vprašanj, objavljenih na razpravnih ploščah Linuxa.

Odprti zvočni sistem (OSS)

Na uradni spletni strani ALSA je omenjena podpora za Open Sound System ali na kratko OSS. Do Linuxa 2.5. OSS je bil dejansko glavni in edini zvočni sistem za Linux. ALSA je bil zasnovan za premagovanje različnih pomanjkljivosti, na primer dejstva, da hkrati ni dovoljevalo dostopa do strojne opreme več kot eni aplikaciji. V Linuxu 2.6 ALSA je zamenjal OSS kot privzeti zvočni sistem.

Ko so razvijalci OSS objavili, da bo imela različica OSS lastniško licenco, so razvijalci Linuxa hitro sprejeli odločitev, da jo nadomestijo z ALSA. Omeniti velja, da je OSS z izdajo različice 4 leta 2007 spet postal brezplačna programska oprema. Danes se OSS distribuira pod štirimi različnimi licencami (BSD, CDDL, GPL, lastniška).

Večina distribucij Linuxa se danes sploh ne trudi aktivirati sloja emulacije OSS, ki je prisoten v ALSA, ker ga skoraj nihče več ne potrebuje, zaradi česar je OSS relikt preteklosti.

PulseAudio

Če se ne spomnite, kdaj ste zadnjič komunicirali z ALSA pri spreminjanju zvočnih nastavitev, je to verjetno zato, ker se uporabniški sloj zvočnega sistema Linux v večini sodobnih distribucij imenuje PulseAudio.

PulseAudio je bil prvotno izdan leta 2004, zdaj pa je privzeto vključen in omogočen v Ubuntu, Linux Mint, openSUSE in drugih večjih distribucijah. Naloga PulseAudio je prenašanje zvočnih podatkov med vašimi aplikacijami in strojno opremo ter usmerjanje zvokov, ki prihajajo iz ALSA, na različne izhodne cilje, kot so zvočniki računalnika ali slušalke. Zato ga običajno imenujemo zvočni strežnik.

Na prvi pogled se zdi, da PulseAudio v resnici ne doda ničesar kritično pomembnega v zvok Linuxa in mnogi njegovi kritiki delijo isto mnenje. V resnici je veliko stvari, ki bi jih bilo brez tega nemogoče ali težko doseči, vključno z mešanjem več zvokov v enega, prenosom zvoka na drugo napravo ali spreminjanjem oblike vzorca ali števila kanalov.

PulseAudio prinaša tudi združljivost med različnimi platformami (FreeBSD, NetBSD, OpenBSD, Linux, Illumos, Solaris, macOS in, omejeno, Microsoft Windows). Če želite neposredno nadzirati PulseAudio, namesto da bi z njim komunicirali prek neke vrste pripomočka za nadzor glasnosti ali plošče, lahko namestite PulseAudio Volume Control (imenovan pavucontrol v večini skladišč paketov).

Če menite, da funkcij, ki jih ponuja PulseAudio, ne uporabljate, lahko uporabite čisto ALSA ali jo zamenjate z drugim zvočnim strežnikom.

PulseAudio vs. JACK

PulseAudio ni edini zvočni strežnik za Linux. Obstaja tudi JACK, ki je rekurzivna kratica za JACK Audio Connection Kit. Medtem ko je bil PulseAudio razvit z namenom upoštevanja splošnih uporabnikov Linuxa, je JACK namenjen DJ-jem in avdio profesionalcem, ki zagotavljajo realnočasovne povezave z nizko zakasnitvijo za avdio in MIDI podatke.

Ker vam JACK omogoča povezavo avdio vhodov in izhodov vsake od vaših aplikacij, lahko z njim naredite nekaj zelo kul stvari, na primer spremljanje lastnega glasu, dodajanje učinkov v realnem času in še več. Pravzaprav so ime tega zvočnega sistema navdihnili kabli, ki se uporabljajo v resničnih snemalnih studiih za gradnjo zapletenih povezav med instrumenti, sintetizatorji, MIDI krmilniki in multitrackerji.

Verjetno največja slabost JACK-a je ta, da običajno deluje popolnoma ali grozno, saj je njegov glavni cilj zagotoviti zvok z nizko zakasnitvijo. Zahteva tudi precej več procesorske moči v primerjavi s PulseAudio, zato jo boste našli predvsem na profesionalnih delovnih postajah, namenjenih urejanju zvoka.

Preverjanje pulznega zvoka in ALSA

Morda se sprašujete, kako naj povem, katero avdio programsko opremo uporablja moj računalnik? Če želite preveriti, ali sta v sistemu prisotna tako Pulse Audio kot ALSA, uporabite naslednja dva ukaza:
Preverjanje PulseAudio:

$ pactl seznam


Preverjanje ALSA:

$ aplay -l

Zaključek

Zvok v Linuxu se zdi zapleten, ker v resnici je. Razplet spleta starejših tehnologij in plasti abstrakcije je lahko resničen izziv tudi za izkušene uporabnike Linuxa, ki na pamet poznajo vse podrobnosti operacijskega sistema. Upajmo, da vam je naš članek pomagal bolje razumeti najpomembnejše komponente zvočnega sistema Linux, vključno z ALSA, OSS in PulseAudio.

S temi brezplačnimi orodji dodajte gibe miške v sistem Windows 10
V zadnjih letih so se računalniki in operacijski sistemi močno razvili. Včasih so morali uporabniki uporabljati ukaze za krmarjenje po upraviteljih da...
Nadzirajte in upravljajte gibanje miške med več monitorji v sistemu Windows 10
Upravitelj miške z dvojnim zaslonom vam omogoča nadzor in konfiguriranje gibanja miške med več monitorji, tako da upočasni gibanje blizu meje. Windows...
WinMouse vam omogoča prilagajanje in izboljšanje premikanja kazalca miške v računalniku z operacijskim sistemom Windows
Če želite izboljšati privzete funkcije kazalca miške, uporabite brezplačno programsko opremo WinMouse. Dodaja več funkcij, s pomočjo katerih boste kar...