Ubuntu 16.04 Sin sonido de los altavoces, solo los auriculares funcionan

8

Estoy al final de mi ingenio con este problema. Sé que he visto este problema un millón de veces, pero ninguna de las soluciones parece funcionar.

Tengo un portátil ASUS con arranque dual con Windows 8.1, actualicé de 15.10 a 16.04 y perdí el uso de los altavoces; la tarjeta de sonido perpetuamente piensa que los auriculares están enchufados, como lo demuestran estas capturas de pantalla.

alsamixer

control de pavu

Esto no es un problema de hardware porque 1) el sonido funciona en Windows 8.1 2) Puedo hacer que los altavoces funcionen desactivando la toma de auriculares usando hdajackretask (anulación de configuración y luego configurándolo en "No conectado") pero luego no puedo usar las teclas de acceso rápido para cambiar el volumen

He intentado recargar alsa y también purgar alsa y reinstalar.

Estoy planeando eliminar mi partición de Windows 8 de todos modos. Vi aquí: No hay sonido en los altavoces de la computadora portátil en Ubuntu 14.04 después de arrancar en Windows 8.1 que Windows podría estar causando el problema. ¿Eliminar la partición ayudará al problema?

Editar: ya he desactivado el arranque híbrido como se sugiere en esa pregunta.

jhutch
fuente
Definitivamente probaría la respuesta aceptada antes que nada.
Lo siento, no mencioné que el arranque híbrido / arranque rápido ya está desactivado como se sugiere en la respuesta. Pregunta de edición ahora.
jhutch

Respuestas:

9

También tuve este problema al actualizar mi Xubuntu 14.04 a Xubuntu 16.04 (los auriculares producían sonido, pero no los altavoces). Tengo una tarjeta de sonido Intel HD con un chip Realtek ALC259. El problema persistió al arrancar con varios núcleos desde 3.13.X a 4.10.X.

Sin embargo, lo FIJÉ, y así es como:

Es importante comprender que Pulseaudio (PA) es el sistema de control de sonido predeterminado para Ubuntu y la mayoría (¿todas?) De sus variantes. PA está esencialmente y se superpone en la parte superior del núcleo del sistema de sonido ALSA. Entonces, por cada acción realizada en PA, hay una reacción posterior dentro de ALSA. Para cada salida (también conocida como puerto) definida dentro de PA, hay un ajuste definido para el sistema ALSA. Este ajuste se conoce como el "camino de mezcla".

!!! IMPORTANTE !!!

Antes de continuar, ahora es un buen momento para verificar que este sea realmente su problema y que no haya otra razón por la cual sus altavoces no estén funcionando. Puede hacerlo muy fácilmente haciendo la siguiente prueba. (Si ha estado jugando con su sistema de sonido, es posible que desee volver a sus valores predeterminados antes de la prueba):

  1. Desenchufe los auriculares u otros dispositivos de sonido, EXCEPTO los altavoces que NO funcionan.
  2. Comience a reproducir un archivo de audio que normalmente generaría sonido desde sus altavoces, aunque actualmente no lo es. Entonces,
  3. Abre tu terminal y ejecuta el comando:

    alsamixer
    

Deberías ver lo siguiente:

alsamixer Debido a las diferencias entre las tarjetas de sonido, sus dispositivos pueden ser un poco diferentes de los de la imagen. En mi caso, y antes de solucionar el problema, mi alsamixer se parecía a la imagen de arriba.

  1. Active el silencio de cualquier dispositivo que esté actualmente silenciado (use la tecla 'm' para alternar el silencio). Luego suba los controles deslizantes de volumen en cualquier dispositivo que no esté al 100%.

Si puede escuchar el sonido de sus altavoces, ¡esta solución es para usted!

Si no escucha ningún sonido, regrese a "Google" y siga buscando. Este método NO te ayudará.


Si obtuvo correctamente el sonido de la prueba anterior, lo que debemos hacer ahora es jugar con la configuración de alsamixer para determinar:

  1. El control de volumen de qué dispositivo controla realmente el volumen de sus altavoces, y
  2. ¿Cuál de los dispositivos debe estar sin silenciar para que funcionen los altavoces? Es posible que sea necesario silenciar varios dispositivos.

Una vez que conocemos la configuración de ALSA mediante la cual trabajarán los altavoces, podemos usar esta información para realizar los cambios necesarios en nuestras rutas de mezclador PA.

En mi caso, descubrí que mis auriculares y altavoces están vinculados dentro de ALSA de las siguientes maneras:

  1. El volumen de mis auriculares está controlado por el dispositivo "Auriculares".
  2. Obtener sonido de mis auriculares requiere que los dispositivos "Master" y "Headphone" estén sin silenciar.
  3. El volumen de mi altavoz TAMBIÉN está controlado por el dispositivo "Auriculares". (El ajuste del volumen del altavoz ALSA sorprendentemente no tiene efecto en el volumen de mi altavoz).
  4. Obtener sonido de mis altavoces requiere que los dispositivos "Master" y "Speaker" estén sin silenciar.

La ruta de mezclador predeterminada del altavoz dentro de PulseAudio (PA) suponía que mis altavoces eran independientes de mis auriculares. Lo cual, como se demostró anteriormente en la observación 3, no fue el caso. Posteriormente, la ruta del mezclador predeterminada dentro de PA para mis altavoces realizó los siguientes cambios problemáticos dentro de ALSA cada vez que se seleccionó la salida de altavoz dentro de PA:

  1. Bajó el volumen de los auriculares a 0.
  2. Configure el dispositivo de altavoz como control de volumen.

Teniendo en cuenta cómo había observado el enlace de ALSA de mis altavoces y auriculares como se describió anteriormente, estos cambios a ALSA evitarían que el sonido salga de mis altavoces.

Entonces, la solución a este problema se obtiene modificando la ruta del mezclador del altavoz.

Los archivos de ruta del mezclador PA se encuentran en:

/ usr / share / pulseaudio / alsa-mixer / paths /

Para determinar qué archivo de ruta de mezclador controla sus altavoces, debe:

  1. Asegúrese de que su salida de altavoz esté seleccionada dentro de PA (es decir, no sus auriculares). ingrese la descripción de la imagen aquí

  2. Abra una terminal y ejecute el siguiente comando:

    pactl list | grep 'Active Port.*output.*'
    
  3. Debería generar algo similar a esto:

    Puerto activo: dispositivo audiotype -output-

es decir

ingrese la descripción de la imagen aquí

El "puerto activo" es el puerto PA que actualmente controla la configuración de ALSA. Como ya seleccionó su altavoz como salida PA, esta salida del comando de terminal le indica que necesita editar el archivo de ruta del mezclador audiotype -output- device .conf. En mi caso, el archivo de ruta del mezclador era analog-output-speaker.conf.

Ahora que tenemos el archivo de ruta de mezclador correcto, necesitamos hacer nuestros cambios.

NOTA: Dentro de esta carpeta de rutas de mezclador, hay un archivo llamado 'analog-output.conf.common'. El contenido de este archivo explica cómo se interpretan los archivos de ruta del mezclador. Si desea comprender los siguientes cambios, le recomiendo que consulte este archivo antes de editar las rutas de mezcla.

Cada archivo de ruta del mezclador contiene numerosos "Elementos". Idealmente, hay un elemento que representa cada dispositivo ALSA en su computadora dentro de cada uno de los archivos. Probablemente hay elementos que no tienes también. Esto es normal.

En mi caso, necesitaba cambiar los elementos de auriculares y altavoces dentro de la ruta del mezclador para salida analógica-altavoz.conf de las siguientes maneras:

  1. Permita que el volumen PA ajuste el volumen ALSA de los auriculares.

Original:

[Element Headphone]
switch = off
volume = off

Editado:

[Element Headphone]
switch = off
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right
  1. (Opcional) Ajuste el volumen del altavoz en apagado y evite que el volumen PA afecte el volumen ALSA. (Si no hace esto, su sonido seguirá funcionando, pero la configuración de los altavoces dentro de ALSA rebotará de manera inestable).

Original:

[Element Speaker]
required-any = any
switch = mute
volume = merge
override-map.1 = all
override-map.2 = all-left,all-right

Editado:

[Element Speaker]
required-any = any
switch = mute
volume = off

Luego, reinicie PA ejecutando:

pulseaudio -k && pulseaudio --start

Voilà!

notorio dds
fuente