View Single Post
Old 18-11-2015, 02:19   #424
JethroTux
Junior Member
 
Iscritto dal: Nov 2015
Messaggi: 24
Asus Xonar U7 - Linux

Voglio condividere con voi le prime impressioni riguardo questa scheda audio, in particolare quelle che inerenti la compatibilità con OS Linux.

Premetto che ho effettuato i test su collegando la scheda ad un Compaq_HP 6720s con distro Archlinux 4.2.5-1-ARCH #1 SMP PREEMPT Tue Oct 27 08:13:28 CET 2015 x86_64 GNU/Linux (ultimo kernel attualmente rilasciato, in attesa del 4.3 stable).

Appena collegata, la scheda è stata subito riconosciuta dal kernel (USB 2.0) e non mi sono sorpreso che alsamixer funzionasse correttamente senza l'errore di broken pipe; è evidente che nelle ultime release dei kernel e di ALSA (o quantomeno nella release 4.2.5-1) il bug sia stato risolto; dunque, non è stato necessario definire l'opzione "ignore_ctl_error=1" per il modulo "snd_usb_audio" in /etc/modprobe.d/alsa-base.conf.

Come prima cosa, ho settato la U7 come scheda primaria, visto che quella impostata di default era l'integrata del notebook (ADI1981). Attraverso lsmod ho appurato che il modulo identificativo della vecchia scheda era "snd_hda_intel", dunque per impostare la u7 come "card 0" ho definito nel file /etc/modprobe.d/alsa-base.conf due opzioni, ovvero:

options snd_usb_audio index=0
options snd_hda_intel index=1

Al riavvio del sistema ho accertato con "aplay -l" che le modifiche fossero state apportate, digitando da terminale:

$ aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: U7 [Xonar U7], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
.....

"Cliccando" la manopola del volume presente sulla scheda, riuscivo a "switchare" da Cuffie/Casse/SPDIF, ma non funzionava la regolazione del volume; mi sono accorto che era un problema del programma xbindkeys, che ho risolto aggiornando il file di configurazione ~/.xbindkeysrc, dove sono appunto definite le combinazioni dei tasti speciali del notebook (FN+F1, FN+F2, FN+F3 ecc, per capirci); al riavvio, la manopola "magicamente" ha preso a funzionare

Per impostare ALSA per l'utilizzo con PulseAudio, ho installato il pacchetto "pulseaudio-alsa", attraverso cui sono riuscito a settare il sample rate massimo ottenibile dalla scheda, ovvero 192KHz/24-bit (di default pulseaudio imposta il rate a 16-bit/44.1Khz).

Digitando da terminale:

$pacmd list-sinks

si visualizzano tutte le impostazioni della scheda, quindi greppando l'output digitando:

$pacmd list-sinks | grep sample
si ottiene il sample rate impostato di default da pulseaudio.

Le impostazioni globali di pulseaudio sono definite in /etc/pulse/daemon.conf, dunque basta editarlo aggiungendo in fondo al file le seguenti righe:

resample-method = src-sinc-medium-quality
default-sample-format = s24le
default-sample-rate = 192000

per ottenere il massimo della qualità, è sufficiente sostituire "src-sinc-medium-quality" con "src-sinc-best-quality", chiaramente con questa opzione il processore lavorerà di più per il "resample" dei file audio riprodotti (l'utilizzo delle risorse si può monitorare con top), quindi con computer un pò datati è consigliabile lasciare "src-sinc-medium-quality".
Mi è bastato salvare il file e riavviare il sound server (non da root) digitando:

$pulseaudio -k
e
$pulseaudio --start

Per controllare se i cambiamenti hanno avuto effetto:
$pacmd list-sinks | grep sample

che come output dovrebbe restituire:
sample spec: s24le ch 2 192000 Hz

Un'ulteriore verifica sarebbe quella di cattare /proc/asound/card0/pcm0p/sub0/hw_params per avere conferma delle avvenute modifiche, chiaramente è necessario lanciare prima un file audio.
Ecco il mio:
$ cat /proc/asound/card0/pcm0p/sub0/hw_params
access: MMAP_INTERLEAVED
format: S24_3LE
subformat: STD
channels: 2
rate: 192000 (192000/1)
period_size: 4800
buffer_size: 19200.

Dopo le modifiche la qualità audio è migliorata sensibilmente, sia utilizzando il mio compatto (Edifier S730) che le cuffie (Superlux HD 681 evo) collegate all'amplificatore della scheda.

Domani proverò l'uscita SPDIF, i test sono stati effettuati in analogico collegando l'uscita rca frontale della scheda all'amplificatore (rca-->rca).
Ciao!
JethroTux è offline   Rispondi citando il messaggio o parte di esso