Home > Debian, Ubuntu > Audio in Linux: Oss, ALSA, pulseaudio ubuntu linux

Audio in Linux: Oss, ALSA, pulseaudio ubuntu linux

Linux Audio Stack

Linux Audio Stack

La gestione dell’audio in Linux storicamente ha subito varie evoluzioni.

OSS

Il primo “sistema sonoro” suportato dal Kernel Linux fino alla versione 2.4.x è stato Open Sound System (OSS). L’API del sistema portabile OSS tuttavia soffriva di alcune limitazioni: mancanza di supporto hardware per MIDI, hardware mixing di multipli canali audio, …

ALSA

A partire dalla versione 2.5.x (2002) del Kernel venne introdotto l’Advanced Linux Sound Architecture (ALSA). Questo componente del Kernel dalla versione 2.6.è diventata l’interfaccia predefinita nella fornitura di device driver per le schede audio. Obiettivo di ALSA la configurazione automatica del hardware e un efficace gestione delle schede audio. ALSA prevede una modalità opzionale di emulazione di OSS.  JACK è un completo framework che utilizza ALSA per consentire operazioni di mixing ed editing audio a bassa latenza tipiche del livello professionale. I programmi che operano solo su Linux utilizzano in genere ALSA, quelli che utilizzano altri sistemi linux come BSD sfruttano OSS. ALSA ha un API più complessa di OSS e risolve alcuni dei limiti di OSS consentendo: sintesi MIDI a livello hardware, driver di perifica per l’ambito multiprocessore, mixing hardware di canali multipli, full duplex.
ALSA fornisce una libreria in user space che consente agli sviluppatori di evitare di interagiere con il Kernel in modo diretto.

Tra i pacchetti che potrebbe essere opporuno avere installato  oatre  a alsa-base

  • alsa-utils
  • alsa-tools-gui
  • alsamixer e/o alsamixergui
  • ( gstreamer0.10-alsa )

testare che la funzionalità audio

speaker-test -c 2

alsamixer il mixer da terminale è completo ed efficace

alsamixer

alsamixergui mixer a interfaccia grafica

Pulseaudio

PulseAudio ( già Polyaudio ) è un server audio multipiattaforma (funziona anche in Windows ) usato in alternativa ad ALSA. PulseAudio si appoggia ad ALSA e consente a differenza di quest’ultimo di riprodurre il suono da più fonti audio diverse contemporaneamente  ( pulseaudio ubuntu )

per verificare che sia operativo pulseaudio basta verificare che il pacchetto in questione sia installato

eventualmente digitare

ps fax | grep [p]ulseaudio

Funzionalità

Le principali funzioni di PulseAudio includono:

  • Supporto per fonti audio multiple;
  • Un demone del sistema sonoro ( configurabile da riga di comando);
  • Capacità di sincronizzare molteplici flussi di riproduzione;
  • Una architettura di memoria di tipo zero-copy, per ridurre il carico del processore; Nota ATTENZIONE Che il programma pavucontrol “mangia” risorse di CPU notevoli tenerlo aprto il minimo indispensabile.
  • Capacità di localizzare i computers della rete con PulseAudio, permettendo la riproduzione sugli stessi del flusso audio;
  • Controllo del volume a livello di singola applicazione:
  • Possibilità di cambio al volo  del dispositivo di riproduzione;
  • Funzioni di conversione dei campioni e ricampionamento;
  • Capacità di combinare più schede audio in una sola;
  • Un’interfaccia a riga di comando con capacità di scripting;
  • Supporto ai dispositivi audio bluetooth e al loro riconoscimento;
  • Consente di regolare l’equalizzazione a livello di sistema;
  • Un’architettura di plugin estendibile con supporto ai moduli caricabili;

Jack 

JACK Audio Connection Kit (JACK e un server audio o demone che consente connessioni a bassa latenza per gestire dati sia audio che midi.

Jack è sfruttato dalla gran parte delle applicazioni audio professioni su Linux …

Interfacce audio

Alcuni comandi per elencare le interfacce audio presenti nel sistema in ubuntu debian

:~$ cat /proc/asound/cards
 0 [M2496          ]: ICE1712 - M Audio Audiophile 24/96
                      M Audio Audiophile 24/96 at 0xcf00, irq 21
 1 [USB20MIDI      ]: USB-Audio - USB2.0-MIDI
                      USB2.0-MIDI at usb-0000:00:12.0-2, full speed

cat /proc/asound/modules è il comando da utilizzare per visualizzare il nome con cui vengono identificate le interfacce audio. Questono me si utilizza anche per cambiare la scheda audio di defaul, l’ordine delle stesse,  l’eventuale inserimento in backlist …

cat /proc/asound/modules
0 snd_hda_intel
1 snd_ice1712
2 snd_usb_audio

altro comando per elencare le schede audio pci

lspci -v | grep -A7 -i "audio"
00:14.2 Audio device: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA)
	Subsystem: Giga-byte Technology GA-MA770-DS3rev2.0 Motherboard
	Flags: bus master, slow devsel, latency 32, IRQ 16
	Memory at fe024000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 2
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd-hda-intel

--
01:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI Cedar HDMI Audio [Radeon HD 5400/6300 Series]
	Subsystem: PC Partner Limited Device aa68
	Flags: bus master, fast devsel, latency 0, IRQ 44
	Memory at fdffc000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 3
	Capabilities: [58] Express Legacy Endpoint, MSI 00
	Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 
--
03:06.0 Multimedia audio controller: VIA Technologies Inc. ICE1712 [Envy24] PCI Multi-Channel I/O Controller (rev 02)
	Subsystem: VIA Technologies Inc. M-Audio Delta Audiophile 2496
	Flags: bus master, medium devsel, latency 32, IRQ 20
	I/O ports at cf00 [size=32]
	I/O ports at ce00 [size=16]
	I/O ports at cd00 [size=16]
	I/O ports at cc00 [size=64]
	Capabilities: [80] Power Management version 1
	Kernel driver in use: snd_ice1712

Risorse:

Linux Audio Users Guide

Annunci
  1. Non c'è ancora nessun commento.
  1. No trackbacks yet.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: