La réponse de JohnT donne une bonne base. Je vais la faire suivre d'une explication sur la façon de trouver les appareils sur votre système. Utilisez “aplay -l” pour obtenir une liste des appareils présents sur votre système. Le hw:X,Y provient de cette cartographie de votre matériel – dans ce cas, X est le numéro de la carte, tandis que Y est le numéro du dispositif.
$ 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
Comme il s'agit de périphériques USB qui ne reçoivent pas toujours les mêmes numéros de périphérique à chaque fois qu'ils sont branchés, le périphérique hw:X,Y peut changer. La réponse la plus simple est, pour un système de bureau, d'essayer les outils de configuration GNOME/KDE/Xfce, et de voir s'ils sont assez intelligents pour prendre en compte les changements.
La manière complexe, si vous ne faites pas cela avec un système de bureau, devient … intéressante. Vous pourriez vous en tirer avec en utilisant les alias de device au lieu de “hw:X,Y” – c'est ce que montre la sortie de “aplay -L”. Le truc “something:CARD=FOO,DEV=Y” est l'alias, et ne changera probablement pas entre les différents plug-ins de périphériques, alors que le X dans “hw:X,Y” pourrait le faire. (En supposant que vous utilisez le même dongle USB à chaque fois.)
$ 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
Donc votre commande aplay deviendrait “aplay -D front:CARD=CK804,DEV=0 somefile.wav”, et vous pouvez utiliser le même nom de périphérique dans votre .asoundrc.
Si vous avez besoin de quelque chose de plus stable à un niveau encore plus bas, de vrais périphériques du noyau, udev est ce que vous voulez – c'est le système qui permet de brancher à chaud des périphériques dans le système. Vous pouvez écrire des règles pour udev (et voici la page de manuel ) qui permettront aux périphériques d'obtenir le même nom de périphérique lorsqu'ils sont branchés.