web-dev-qa-db-fra.com

Le son via HDMI ne fonctionne plus après le réveil suspendu

Jusqu’à présent, suspendre pour s’écrouler et s’éveiller ça marche. L'écran externe de mon ordinateur portable (connecté via HDMI) fonctionne également.

Cependant, ce qui ne fonctionne pas, c'est le son, qui fonctionne avant la suspension, bien sûr. J'utilise les haut-parleurs de mon moniteur externe et j'ai effectué les réglages correspondants dans le menu son d'Ubuntu (basculé sur "Sortie stéréo numérique (HDMI) + Entrée stéréo analogique" dans l'onglet "Matériel").

Que puis-je faire pour le réparer?

Edit: quand j'ai exécuté ubuntu-bug, il testait la sortie audio avec et sans utilisation de Pulse. Sans Pulse, cela a fonctionné, mais j'ai quand même entendu le bruit. Avec Pulse, ce n'était que du bruit.

Edit: fonctionne correctement avec natty et oneiric maintenant. La mise à jour vers la dernière version d'Ubuntu résout le problème.

3
Florian Heinle

Un dysfonctionnement matériel après la suspension ressemble à un bogue de pilote. ubuntu-bug -s audio

Pendant ce temps, vous pouvez essayer Sudo alsa force-reload pour forcer vos pilotes à décharger et à recharger (cette option tuera toutes les applications sonores en cours d'exécution dans le processus).

3
maco

Déterminez quel module de noyau gère l'audio HDMI. Sur mon ordinateur XBMC, il s'agit de "snd_hda_codec_nvhdmi", puis déchargez ce module avant que l'ordinateur portable ne soit en veille via un script dans /etc/pm/sleep.d. La commande "lsmod | grep hdmi" peut vous donner des indices. Vous devrez peut-être décharger plus d’un module pour que cela fonctionne correctement (comme "snd"), mais si vous pouvez trouver la bonne combinaison, ce sera comme si vous éteigniez et redémarriez chaque fois que vous dormez votre ordinateur portable.

Voici à quoi votre script devrait ressembler:

#!/bin/sh

# Script to disable hdmi audio before suspend and restart after wake.

case "${1}" in
        suspend|hibernate)
            rmmod snd_hda_codec_nvhdmi
            rmmod snd
                ;;
        resume|thaw)
            modprobe snd
            modprobe snd_hda_codec_nvhdmi
                ;;
esac
1
Pete Ashdown