4 votes

Interface audio usb non reconnue par alsa

Après avoir lu beaucoup de recommandations, j'ai finalement acheté un Focusrite Scarlett 2i4 et installé Ubuntu Studio. Je tourne sous Ubuntu 14.04 sur un bureau amd64.

$ uname -rvi
3.13.0-46-generic #76-Ubuntu SMP Thu Feb 26 18:52:13 UTC 2015 x86_64

Une fois branché, le périphérique est reconnu par le noyau.

$ dmesg
...
[14973.155287] usb 3-2: new full-speed USB device number 7 using ohci-pci
[14973.355783] usb 3-2: not running at top speed; connect to a high speed hub
[14973.370772] usb 3-2: New USB device found, idVendor=1235, idProduct=800a
[14973.370784] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[14973.370791] usb 3-2: Product: Scarlett 2i4 USB
[14973.370797] usb 3-2: Manufacturer: Focusrite
...

$ lsusb -v
...
Bus 003 Device 007: ID 1235:800a Focusrite-Novation Scarlett 2i4
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x1235 Focusrite-Novation
  idProduct          0x800a Scarlett 2i4
  bcdDevice            1.25
  iManufacturer           1 
  iProduct                2 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           18
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         0 (Defined at Interface level)
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
...

Mais il ne peut pas être vu comme un périphérique audio et donc n'est pas reconnu par alsa.

$ cat /proc/asound/cards
 0 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xfbe78000 irq 21
 1 [HDMI           ]: HDA-Intel - HDA ATI HDMI
                      HDA ATI HDMI at 0xfbffc000 irq 41

$ aplay -l
**** Liste des périphériques matériels de lecture ****
card 0: NVidia [HDA NVidia], device 0: VT1708S Analog [VT1708S Analog]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
card 0: NVidia [HDA NVidia], device 3: VT1708S Digital [VT1708S Digital]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0

Comme le périphérique n'a pas pu être ouvert, altérer le fichier /etc/modprobe.d/alsa-base.conf n'a pas aidé et créer un fichier ~/.asoundrc était inutile.

$ cat /etc/modprobe.d/alsa-base.conf 
# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7

# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; }
#
# Workaround at bug #499695 (reverted in Ubuntu see LP #319505)
install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
install snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; }
install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-blacklist snd-seq-oss ; : ; }
#
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; }
# Cause optional modules to be loaded above sound card driver modules
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; }
install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; }

# Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway)
install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; }

(...) 

$ cat .asoundrc 
       pcm.usb-audio {
          type hw
          card 2
       }

       ctl.usb-audio {
          type hw
          card 2
       }

Le chargement du module snd-usb-audio et le rechargement manuel d'alsa (sudo modprobe snd-usb-audio && sudo alsa force-reload) ne fonctionnent pas. Y a-t-il un moyen de faire en sorte que le Focusrite Scarlett 2i4 soit ouvert par les pilotes USB et reconnu par alsa?

Lorsque je le branche sur mon ancien ordinateur portable (ubuntu 14.04 i686) sans ubuntu-studio et jack en utilisant le fichier alsa-base.conf par défaut, il peut être ouvert, est reconnu comme périphérique audio puis par alsa, et le module snd-usb-audio est chargé, mais il n'y a pas de commandes. Je suis au bout de mes connaissances.

3voto

J'ai aussi un 2i4, il fonctionne sur des ordinateurs avec une performance USB2 adéquate, il ne fonctionne pas sur mon ThinkPad T41 car la performance USB2 du T41 n'est pas très bonne (semble être un défaut sur certains T41).

[14973.155287] usb 3-2: nouveau périphérique USB à vitesse complète numéro 7 utilisant ohci-pci
[14973.355783] usb 3-2: ne fonctionne pas à pleine vitesse; connectez-vous à un hub haute vitesse

Votre sortie dmesg montre que le 2i4 n'est pas connecté en USB2 haute vitesse. Corrigez cela et cela fonctionnera (rebranchez-le sur un port USB2).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X