User Tools

Site Tools


doc:appunti:linux:sa:mpd

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
doc:appunti:linux:sa:mpd [2012/08/17 12:47] – [Configurazione del server] niccolodoc:appunti:linux:sa:mpd [2012/08/17 15:04] – [Test ALSA] niccolo
Line 8: Line 8:
  
 ===== Configurazione del server ===== ===== Configurazione del server =====
 +
 +==== Sistema audio ALSA ====
  
 Anzitutto conviene verificare che il sottositema audio funzioni a dovere. L'hardware audio viene supportato dai **driver ALSA** inclusi nel kernel, ma noi vogliamo anche la **compatibilità con il vecchio sistema OSS** (vedremo poi il perché). Anzitutto conviene verificare che il sottositema audio funzioni a dovere. L'hardware audio viene supportato dai **driver ALSA** inclusi nel kernel, ma noi vogliamo anche la **compatibilità con il vecchio sistema OSS** (vedremo poi il perché).
Line 76: Line 78:
     USB Headphone Set, USB Audio     USB Headphone Set, USB Audio
     IEC958 (S/PDIF) Digital Audio Output     IEC958 (S/PDIF) Digital Audio Output
 +</code>
 +
 +Il problema principale è che alla scheda audio **viene assegnato l'identificativo #1**, mentre tutti i programmi Alsa per impostazione predefinita usano la scheda #0.
 +==== Test ALSA ====
 +
 +Il **primo problema** lo incontriamo con il comando **''aplay''** che non sa quale dispositivo audio utilizzare:
 +
 +<code>
 +aplay /usr/share/sounds/alsa/Front_Center.wav
 +ALSA lib confmisc.c:768:(parse_card) cannot find card '0'
 +ALSA lib conf.c:4170:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
 +ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
 +ALSA lib conf.c:4170:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
 +ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name
 +ALSA lib conf.c:4170:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
 +ALSA lib conf.c:4649:(snd_config_expand) Evaluate error: No such file or directory
 +ALSA lib pcm.c:2190:(snd_pcm_open_noupdate) Unknown PCM default
 +aplay: main:654: audio open error: No such file or directory
 +</code>
 +
 +Specificando il dispositivo si ha un miglioramento, ma resta il **problema del numero di canali**: il file audio è mono, mentre il device è stereo:
 +
 +<code>
 +aplay --device='front:CARD=Set,DEV=0' /usr/share/sounds/alsa/Front_Center.wav
 +Playing WAVE '/usr/share/sounds/alsa/Front_Center.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono
 +aplay: set_params:1059: Channels count non available
 +</code>
 +
 +Lo stesso identico risultato si ottiene usando **''hw:1,0''** (scheda audio #1, device #0) al posto della stringa descrittiva ''CARD=Set,DEV=0''.
 +
 +Anche il **mixer Alsa** non funziona alla prima:
 +
 +<code>
 +alsamixer 
 +cannot open mixer: No such file or directory
 +</code>
 +
 +La soluzione a tutti i problemi è creare un file di configurazione **''/etc/asound.conf''**:
 +
 +<file>
 +# Give an alias to PCM device hw:1,0 (card 1, device 0):
 +pcm.def_pcm {
 +    type hw
 +    card 1
 +    device 0
 +}
 +# Default (virtual) PCM device goes through the "plug" plugin (which does
 +# rate and channels resampling on-the-fly) to the real PCM device:
 +pcm.!default {
 +    type plug
 +    slave {
 +        pcm def_pcm
 +    }
 +}
 +# Default control (e.g. for mixer) is card 1:
 +ctl.!default {
 +    type hw
 +    card 1
 +</file>
 +
 +Il file di configurazione vale per tutto il sistema, il singolo utente può crearsi un ''.asoundrc'' alternativo. Viene utilizzato per definire alias, device virtuali che combinano funzioni di pre o post-processing, ... In generale non dovrebbe essere necessario, vedere la [[http://alsa.opensrc.org/.asoundrc|documentazione relativa]].
 +
 +==== Test MP3 ====
 +
 +Dopo che il sistema Alsa è stato configurato e collaudato, è possibile testare il funzionamento del decoding mp3:
 +
 +<code>
 +mpg321 -o alsa track001.mp3
 </code> </code>
 ===== MP Client ===== ===== MP Client =====
doc/appunti/linux/sa/mpd.txt · Last modified: 2012/08/17 15:14 by niccolo