Elementi fondamentali dell'architettura audio in GNU/Linux.

Creato il 30 gennaio 2014 da Hugor @msdiaz61

ALSA.

ALSA è il progetto che sviluppa i device drivers per le schede audio e MIDI . La pagina ALSA su wikipedia fornisce ulteriori dettagli.

Prima di acquistare qualsiasi hardware audio è necessario verificare che sia supportato da ALSA o da FFADO (per le schede firewire). Sul sito del progetto ALSA si può consultare la soundcard matrix dove vengono elencate tutte le schede supportate.

Approfondimento su come scegliere una scheda audio o MIDI

Fino a non molti anni fa il supporto per le schede audio era tutt'altro che scontato, e in alcuni casi (MOTU, per esempio) è tuttora assente. Oggigiorno invece molto hardware audio è riconosciuto e gestito senza problemi, in modo completamente trasparente per l'utente. E' possibile pertanto utilizzare uno dei numerosi live cd per controllare il supporto di una scheda, senza bisogno di installare nulla.

Ecco alcuni file interessanti:

$ cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.23.

$ cat /proc/asound/cards
0 [SB   ]: HDA-Intel - HDA ATI SB
   HDA ATI SB at 0xfe024000 irq 16
1 [UX256   ]: USB-Audio - UX256
   Yamaha UX256 at usb-0000:00:12.1-1, full speed
2 [StudiologicUSB ]: USB-Audio - Studiologic-USB
   STUDIOLOGIC Studiologic-USB at usb-0000:00:12.0-3.4, full speed
3 [DSP24   ]: ICE1712 - Hoontech SoundTrack Audio DSP24
   Hoontech SoundTrack Audio DSP24 at 0xcf00, irq 21
4 [HDMI   ]: HDA-Intel - HDA ATI HDMI
   HDA ATI HDMI at 0xfdffc000 irq 19


FFADO.

Ffado è un progetto per il supporto delle schede audio firewire. Fornisce uno strumento online per verificare il grado di supporto delle varie interfacce.

Jack è la pietra angolare dell'audio professionale su GNU/Linux, si tratta di un server audio a bassa latenza che consente lo scambio di flussi audio con l'esterno e tra applicazioni.

Con Jack è possibile pertanto costruire una rete arbitraria di connessioni audio tra diversi programmi, e tra essi e l'interfaccia audio per acquisizione o riproduzione nel dominio analogico, ovvero fuori dal computer.

Jack si occupa anche del protocollo MIDI con l'interfaccia nota come Jack-midi, da non confondere con il midi basilare fornito dai driver ALSA. Tra i due mondi è possibile creare un ponte con il software a2jmidid

qjackctl è un front-end grafico per jack. Non è indispensabile, aiuta solo nella configurazione e nella gestione delle connessioni.


PulseAudio.

PulseAudio è un server audio orientato all'utilizzo desktop. Si appoggia su ALSA o JACK e gestisce eventi sonori delle applicazioni e tutto l'audio che ci si può aspettare normalmente da utente (skype, youtube, riproduttori multimediali, etc...)

Spesso in questa veste pulseaudio può rivelarsi un ostacolo, ragion per cui molti che desiderano fare audio in modo professionale non lo installano o lo rimuovono. Questo potrebbe pregiudicare però l'utilizzo di ambienti desktop come GNOME.
LADSPA, LV2
Calf.png

LADSPA e LV2 sono due standard per la scrittura di plugin audio per GNU/Linux. LV2 è il successore di LADSPA e aggiunge alcune funzionalità come il MIDI e la possibilità di creare plugin con interfacce grafiche dedicate, cosa non possibile con il progenitore LADSPA, che rimane comunque uno standard semplice e ben supportato.

Con LADSPA e LV2 le applicazioni si arricchiscono di plugin di ogni sorta, che siano essi effetti come riverbero, chorus, delay, phaser, flanger, etc... o processori di segnale come equalizzatori, filtri, compressori, gate, etc... ma non solo: anche componenti per sintetizzatori modulari come oscillatori, inviluppi, LFO, etc...

Esiste una serie di collezioni di plugin LADSPA, ecco alcune tra le più note:

   SWH plugin di Steve Harris, uno dei pionieri di LADSPA
   caps serie di plugin completa
   CMT plugin basilari ma indispensabili
   TAP plugins serie di plugin completa
   plugin di fons adriaensen Ambisonics, riverbero e moduli per synth


Ecco una lista di plugin LV2 (dal sito):

   abGate - LV2 Noise Gate plugin.
   avw.lv2 - A port of the AMS internal modules to LV2 plugins.
   Calf Plugins - A set of plugins available as LV2, including a flanger, an organ synth, a phaser, a reverb, some filters, a chorus and a rotary speaker simulator.
   Composite Sampler - LV2 plugin that acts as a MIDI-controllable sampler.
   EQ10Q - is an audio plugin over the LV2 standard implementing a powerful and flexible parametric equalizer.
   foo-yc20 - The YC-20 is a divide-down combo organ designed in the late 60's. This emulation faithfully copies the features, sounds and flaws of the original organ.
   Invada Studio Plugins - Another set of LV2 plugins with delays, distortions, filters, phasers, reverbs, and some utility plugins.
   IR - No-latency/low-latency, realtime, high performance signal convolver.
   kn0ck0ut-LV2 - An LV2 port of kn0ck0ut.
   linuxDSP plugins - Professional audio processing plugins for Linux (commercial proprietary software).
   ll-plugins Several synth and utility plugins and a GUI-capable host.
   lv2-mdaEPiano - Native LV2 port of the famous mdaEPiano VSTi.
   lv2fil - Four-band parametric equaliser LV2 plugin.
   mda-lv2 (in development, SVN only) - An LV2 port of the popular VST mda plugins.
   minaton - A fat sounding mono subtractive software synthesizer.
   NASPRO - Bridges from LADSPA and DSSI to LV2.
   Newtonator - LV2 soft synth that produces some unpredictable sounds.
   Russolo Suite - The CrazySynth Synthesizer and the "the do-it-all effect" Omnifono.
   So-synth-LV2 - Unofficial LV2 ports of 50m30n3's synthesizers.
   swh-plugins - An LV2 version of the popular LADSPA collection.
   TalentedHack - A Pitch Correction LV2 plugin derived from Autotalent.
   Teliasopia LV2 Plugins - A set of LV2 plugins with GUI, including filters and dynamic processors.
   Vocoder - An LV2 vocoder.
   VocProc - VocProc is a LV2 plugin for pitch shifting (with or without formant correction), vocoding, automatic pitch correction and harmonizing of singing voice.
   Zyn - An LV2 port of Zynaddsubfx.
   Aubio-LV2 - LV2 wrappers for some of the Aubio library

Librerie audio.

   libsndfile
   dssi
   rubberband

Se ti è piaciuto l'articolo , iscriviti al feed cliccando sull'immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:


Potrebbero interessarti anche :

Possono interessarti anche questi articoli :