GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa significano i dispositivi ALSA come hw:0,0? Come faccio a capire quale usare?

La risposta di JohnT fornisce una buona base. Lo seguirò con come trovare i dispositivi sul tuo sistema. Usa aplay -l per ottenere un elenco dei dispositivi sul tuo sistema. Il hw:X,Y deriva da questa mappatura del tuo hardware -- in questo caso, X è la carta numero, mentre Y è il dispositivo numero.

$ aplay -l   # note lower-case "L" option
**** List of PLAYBACK Hardware Devices ****
card 0: T71Space [Terratec Aureon 7.1-Space], device 0: ICE1724 [ICE1724]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: T71Space [Terratec Aureon 7.1-Space], device 1: IEC1724 IEC958 [IEC1724 IEC958]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: T71Space [Terratec Aureon 7.1-Space], device 2: ICE1724 Surrounds [ICE1724 Surround PCM]
  Subdevices: 3/3
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2

Poiché si tratta di dispositivi USB che potrebbero non ricevere sempre gli stessi numeri di dispositivo ogni volta che vengono collegati, hw:X,Y dispositivo potrebbe cambiare. La risposta più semplice è, per un sistema desktop, provare gli strumenti di configurazione di GNOME/KDE/Xfce e vedere se sono abbastanza intelligenti da rilevare le modifiche.

Il modo complesso, se non lo fai con un sistema desktop, diventa ... interessante. Potresti riuscire a farla franca utilizzando gli alias del dispositivo anziché hw:X,Y -- questo è l'output di aplay -L Spettacoli. Il qualcosa:CARD=FOO,DEV=Y roba è l'alias e probabilmente non cambierà tra i diversi plug-in del dispositivo, dove la X in hw:X,Y potrebbe. (Supponendo che tu stia utilizzando lo stesso dongle USB ogni volta.)

$ aplay -L
default:CARD=CK804
    NVidia CK804, NVidia CK804
    Default Audio Device
front:CARD=CK804,DEV=0                 # hw:0,0
    NVidia CK804, NVidia CK804
    Front speakers
surround40:CARD=CK804,DEV=0            # hw:0,1
    NVidia CK804, NVidia CK804
    4.0 Surround output to Front and Rear speakers

Quindi il tuo comando aplay diventerebbe aplay -D front:CARD=CK804,DEV=0 somefile.wav e puoi usare lo stesso nome dispositivo nel tuo .asoundrc.

Se hai bisogno di qualcosa di più stabile a un livello ancora più basso, veri e propri dispositivi del kernel, udev è quello che vuoi:è il sistema che consente di collegare a caldo i dispositivi al sistema. Puoi scrivere regole per udev (ed ecco la pagina man) che consentiranno ai dispositivi di ottenere lo stesso nome dispositivo quando sono collegati.


hw:0,0 specifica il dispositivo predefinito, sulla scheda audio predefinita. Per accedere al primo dispositivo della tua seconda scheda audio, devi specificare hw:1,0 . Questi sono specificati nel tuo .asoundrc . Maggiori informazioni su tutto questo qui.


Linux
  1. Che cos'è un comando Chown in Linux e come usarlo

  2. Come dire a Firefox di utilizzare un altro dispositivo Alsa?

  3. Come trovare quale porta seriale è in uso?

  4. Installazione di Grub 2 su Mdadm, quale dispositivo?

  5. Come faccio a capire quale /dev è un'unità flash USB?

Come usare CURL come un professionista in Linux

Cos'è EasyApache e come si usa?

Cos'è BusyBox in Linux? Come usarlo?

Come aggiungere dispositivi da monitorare con ManageEngine OpManager

Come rilevare e gestire i dispositivi su Linux

Come utilizzare il comando which in Linux