Cuando el demonio pulseaudio no se está ejecutando, puedo usar aplay para enviar sonido a los parlantes con

aplay -Dhw:1,0 sample.wav 

alsamixer parecen hacer lo que espero al controlar el volumen de la tarjeta cuando juego como arriba; en particular, los canales master y frontales afectan el volumen de la muestra reproducida anteriormente.

Cuando aplay -L enumera varios PCM. Cuando selecciono uno de estos PCM para una reproducción, no hay ningún sonido. Si pulseaudio se está ejecutando, la reproducción falla silenciosamente. Si pulseaudio no se está ejecutando, falla con un error 2, no se puede abrir el archivo.

La mayoría de las aplicaciones de sonido no parecen permitir una especificación de bajo nivel del hardware de sonido, por lo que no puedo obtener ningún sonido. en absoluto excepto a través de un juego. Creo que el problema es que los nombres de PCM de nivel superior no se asignan correctamente a los dispositivos de hardware.

Notaré que un kernel más antiguo sin pulseaudio no tenía problemas de sonido en esta máquina.

Estos no producen sonido:

aplay -Dfront sample.wav aplay -Dpulse sample.wav 

aplay -L salida:

null Discard all samples (playback) or generate zero samples (capture) pulse PulseAudio Sound Server hdmi:CARD=HDMI,DEV=0 HDA Intel HDMI, HDMI 0 HDMI Audio Output hdmi:CARD=HDMI,DEV=1 HDA Intel HDMI, HDMI 1 HDMI Audio Output hdmi:CARD=HDMI,DEV=2 HDA Intel HDMI, HDMI 2 HDMI Audio Output default:CARD=PCH HDA Intel PCH, ALC892 Analog Default Audio Device sysdefault:CARD=PCH HDA Intel PCH, ALC892 Analog Default Audio Device front:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Analog Front speakers surround21:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Analog 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers iec958:CARD=PCH,DEV=0 HDA Intel PCH, ALC892 Digital IEC958 (S/PDIF) Digital Audio Output 

aplay -l salida

card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog] Subdevices: 0/1 Subdevice #0: subdevice #0 card 1: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital] Subdevices: 1/1 Subdevice #0: subdevice #0 

Comentarios

  • Si puede reproducir sonido directamente en el hw, Pulseaudio no se está ejecutando (o no pudo ' t agarrar este dispositivo para un uso exclusivo), por lo que reproducir pulse no puede ' t funcionar.
  • @dirkt – Tiene razón– agregué más detalles a la pregunta
  • Para pulseaudio, inicie pavucontrol y asegúrese de que su transmisión vaya a la salida correcta (no HDMI). Además, use paplay en lugar de aplay para eliminar la complejidad (y las fuentes de errores). Sin pulsoa udio, ¿ha probado aplay -D front:CARD=PCH,DEV=0 como se sugiere? Nunca entendí la coincidencia completa del nombre del dispositivo ALSA, pero posiblemente front solo pueda coincidir con otra cosa.

Respuesta

La respuesta para mí fue que Pulseaudio estaba malinterpretando udev o udev le estaba dando la configuración incorrecta; no sé lo suficiente para decidir la pregunta. Si cambio el audio de Pulse default.pa para establecer explícitamente la configuración de hardware en lugar de obtenerla de udev, funciona.

En default.pa, tuve que descomentar estas dos líneas:

load-module module-alsa-sink device=hw:1,0 load-module module-alsa-source device=hw:1,0 

y comenta estas líneas:

### Automatically load driver modules depending on the hardware available #.ifexists module-udev-detect.so #load-module module-udev-detect #.else ### Use the static hardware detection module (for systems that lack udev support) #load-module module-detect #.endif 

Responder

Tienes que usar el nombre completo del dispositivo para seleccionar la tarjeta correcta:

aplay -D front:CARD=PCH,DEV=0 sample.wav 

Para cambiar la tarjeta predeterminada, agrega algo como esto a la /etc/asound.conf o a su ~/.asoundrc:

 defaults.ctl.card "PCH" defaults.pcm.card "PCH"  

Para que PulseAudio use la tarjeta correcta, debe configurarla (pruebe pavucontrol).

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *