Tarjeta USB como mi dispositivo de audio predeterminado

32

Compré una pequeña tarjeta de sonido USB. My Pi reconoce el dispositivo:

$ lsusb
Bus 001 Device 004: ID 0d8c:013c C-Media Electronics, Inc. CM108 Audio Controller

Si ejecuto alsamixery configuro el audio USB PnP Sound Device, puedo escuchar el audio a través de la tarjeta de sonido USB. Para hacerlo permanente, escribo:

$ sudo alsactl store

Pero después de reiniciar, el valor predeterminado ya no es la tarjeta de sonido USB.

ingrese la descripción de la imagen aquí

Entonces trato de ver una lista de dispositivos de reproducción:

$ aplay -l

    **** List of PLAYBACK Hardware Devices ****
  card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
  card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Edito /etc/asound.confpara que se vea así para establecer el valor predeterminado:

$ sudo nano /etc/asound.conf


pcm.!default {
 type hw
 card 1
 device 0
}

Hacer un rebooty todavía mi valor predeterminado no es la tarjeta de sonido USB.

Cuando lo intento:

$ aplay /usr/share/sounds/alsa/Front_Center.wav -D sysdefault:CARD=1

Escucho sonido de la tarjeta USB.

También probé lo siguiente:

$ sudo nano /etc/modprobe.d/alsa-base.conf

cambie el índice de -2 a 0:

options snd-usb-audio index=0

Reinicie y aún así no estableció el valor predeterminado. Incluso comenté la línea y no tuve suerte.

Entonces, ¿cómo configuro la tarjeta USB como mi dispositivo de audio predeterminado?

Editar

 dpkg -s pulseaudio

Muestra:

Package: pulseaudio
Status: install ok installed
Priority: optional
Section: sound
Installed-Size: 4413
Maintainer: Pulseaudio maintenance team <[email protected]>
Architecture: armhf
Multi-Arch: foreign
Version: 2.0-6
Depends: libasound2 (>= 1.0.24.1), libc6 (>= 2.13-28), libcap2 (>= 2.10), libdbus-1-3 (>= 1.1.1), libfftw3-3, libgcc1 (>= 1:4.4.0), libice6 (>= 1:1.0.0), libltdl7 (>= 2.4.2), liborc-0.4-0 (>= 1:0.4.16), libpulse0 (= 2.0-6), libsamplerate0 (>= 0.1.7), libsm6, libsndfile1 (>= 1.0.20), libspeexdsp1 (>= 1.2~beta3.2-1), libstdc++6 (>= 4.1.1), libsystemd-daemon0 (>= 31), libsystemd-login0 (>= 31), libtdb1 (>= 1.2.7+git20101214), libudev0 (>= 146), libwebrtc-audio-processing-0, libx11-6, libx11-xcb1, libxcb1, libxtst6, adduser, lsb-base (>= 3.2-13), consolekit, udev (>= 143), libasound2-plugins
Recommends: pulseaudio-module-x11, gstreamer0.10-pulseaudio, rtkit
Suggests: pulseaudio-utils, pavumeter, pavucontrol, paman, paprefs
Breaks: libltdl3 (<< 1.5.24-1)
Conffiles:
 /etc/init.d/pulseaudio 8580c855e4547e8a3c84dca96d9bbd7e
 /etc/default/pulseaudio ee26e4427d72cf16a59b1a8ce2712c66
 /etc/xdg/autostart/pulseaudio.desktop 5e19ffbe14d21702be1edd3256c4265d
 /etc/xdg/autostart/pulseaudio-kde.desktop fd20c58d32035e908a0866784e4e3511
 /etc/pulse/system.pa 408f6d6119d7afce522ab1b394709134
 /etc/pulse/default.pa a9ac2a96744beae0913865fafd3d2582
 /etc/pulse/daemon.conf 6c9e4c973cabb406beee3ec81c63fcd7
 /etc/dbus-1/system.d/pulseaudio-system.conf 69d56dc5342bf589a2e199541709a452
Description: PulseAudio sound server
 PulseAudio, previously known as Polypaudio, is a sound server for POSIX and
 WIN32 systems. It is a drop in replacement for the ESD sound server with
 much better latency, mixing/re-sampling quality and overall architecture.
 .

Luego:

cat /proc/asound/modules

Muestra:

 0 snd_bcm2835
 1 snd_usb_audio
PhillyNJ
fuente
Pregunta ... ¿tienes pulseaudio instalado por casualidad? Corre dpkg -s pulseaudiopara averiguarlo, dirá algo así dpkg-query: package 'pulseaudio' is not installed and no information is availablesi no lo es. ¿Podría ejecutar ese comando y publicar la salida?
RPiAwesomeness
Además, ¿puedes ejecutar cat /proc/asound/modulesy publicar la salida?
RPiAwesomeness
@RPiAwesomeness: actualizado con la información solicitada.
PhillyNJ
1
Bien, ¿has probado esto options snd-usb-audio index=0 [PRESS ENTER] options snd_bcm2835 index=1? Por lo que puedo ver, ¿simplemente está cambiando el snd-usb-audioíndice y el sistema lo está volviendo a cambiar porque no puede tener dos (usb y bcm2835) en el mismo índice?
RPiAwesomeness
2
¡Hurra! : D Me alegro de haber ayudado, ¡y nunca tuvimos que desinstalar pulseaudio! Hurra por internet :)
RPiAwesomeness

Respuestas:

28

Resulta que el OP estaba pensando en el camino correcto con su intento

$ sudo nano /etc/modprobe.d/alsa-base.conf

y cambiando el índice de -2 a 0 mediante la adición options snd-usb-audio index=0al archivo. Sin embargo, esto no estaba funcionando.

La forma correcta de hacerlo es agregar options snd-usb-audio index=0seguido de options snd_bcm2835 index=1.

Básicamente, lo que hace esto es forzar la snd_bcm2835desactivación del módulo de sonido predeterminado ( ) mientras el módulo de sonido usb ( snd-usb-audio) está habilitado.

Lo que creo que sucedía anteriormente con solo agregar options snd-usb-audio index=0era que el snd-usb-audiomódulo y el snd_bcm2835estaban en conflicto, con ambos habilitados.

RPiAwesomeness
fuente
No hay problema. Nuevamente, siempre me alegra ayudar: D
RPiAwesomeness
¡Dulce! Esto solucionó el problema para mí también. Tuve que reiniciar después de cambiar alsa-base.conf, FWIW.
Andrew Swan
@ AndrewSwan De nada! ¡Encantado de ayudar! :)
RPiAwesomeness
14

Con Raspbian Jesse, cambiar el dispositivo de audio predeterminado es más simple de lo que solía ser.

Ahora, simplemente use este comando para enumerar sus tarjetas de sonido detectadas por alsa y tome nota del número de tarjeta de su dispositivo preferido.

aplay -l

Luego cree / edite el archivo de configuración alsa en ~/.asoundrc, o el ancho del sistema en /etc/asound.conf, y pegue estas líneas:

pcm.!default {
    type hw
    card 0
}

ctl.!default {
    type hw           
    card 0
}

cambiando card 0al número de tarjeta de su dispositivo de sonido.

Use alsamixerpara verificar que el valor predeterminado se haya configurado correctamente.

Fuente:

semitonos
fuente
1
@Greenonline, re: mi 'pregunta' de ayer, realmente no pude agregar esta respuesta la otra noche, ¡porque estaba protegida por la comunidad y todavía no tenía 10 repeticiones! Gracias por el amable comentario, sin embargo, ayudó :)
semitonos
Ah ok Gracias. Pensé que esta respuesta parecía familiar ... :-)
Greenonline
La respuesta aceptada no funcionó para mí, ¡pero esto funcionó! Muchas gracias.
Twiffy
2
Esto no funcionó para mí, en lugar de eso lo puse a trabajar escribiendo esto en asound.conf "pcm.! Default {type plug slave {pcm" hw: 1,0 "}} ctl.! Default {type hw card 1} "De: linuxcircle.com/2013/05/08/…
Moulde