Il peut arriver que pour certaines personnes, le branchement d'une sortie HDMI (télévision, moniteur supplémentaire…) entraîne bien la diffusion de l'image mais pas celle du son, ce qui s'avère très rapidement handicapant. Cette page devrait vous aider à résoudre le problème.
Dans la plupart des cas il suffira simplement d'aller dans les Paramètres du son, puis dans l'onglet Sortie de sélectionner ce qui correspond au HDMI.
Si la première ne fonctionne pas essayer la méthode manuelle qui suit.
Avant de continuer plus loin, il peut être intéressant de connaître sa carte graphique. Nvidia + model ou ATI radeon + model. Pour connaître les caractéristiques de la carte graphique, vous pouvez utiliser depuis un terminal l'une des commandes suivantes :
lspci | grep "VGA compatible controller"
lshw -enable pci -class display
maintenant que vous connaissez le fabriquant et le modèle et le pilote installé il va falloir vérifier si vous avez le bon pilote en vous appuyant sur la page « Les cartes graphiques » et aller sur nvidia ou ati en installation via le site officiel.
Si tous est correct il vous reste à rediriger le bon périphérique.
actualité de ce qui suit à vérifier.
gnome-alsamixer
Puis redémarrez et le son fonctionnera.
sudo alsa force-reload
Voici les commandes les plus demandées pour que l'on vous aide en cas de soucis sur le forum.
commande | description |
---|---|
alsamixer | Sert à avoir une interface de gestion du système de son dans le terminal pour régler les cartes son trouvées. |
aplay -l | Sert à montrer les noms des cartes son reconnues, leurs numéros de périphériques et sous périphériques, ainsi que le nombre total de périphériques connectés. |
cat /proc/asound/cards | Sert aussi à montrer ses cartes son mais sans les sous-périphériques. |
lsmod | grep snd | Sert à voir si le son du périphérique sélectionné marche correctement. |
sudo alsa force-reload | Sert à forcer alsa à redémarrer pour charger les périphériques et les nouveaux réglages. |
gstreamer-properties | Sert à ouvrir une interface graphique pour paramétrer et tester les sorties/entrées audio et vidéo. Vous pourrez également choisir ici le greffon que vous voulez utiliser, pour le cas présent ce sera alsa architecture. |
sudo dpkg-reconfigure linux-sound-base | sert à choisir le greffon à utiliser. Pour le cas présent ce sera alsa. |
lspci | grep -i audio | Sert à détailler vos deux cartes son, leur ordre, et numéro "ICH" |
lspci | Sert à voir tout le matériel connecté à l'ordinateur et leur chemin. |
pavucontrol | Sert à démarrer un gestionnaire de son pulse audio pour activer les périphériques ou les désactiver par interface graphique. Très utile. |
gnome-alsamixer | Ceci est une interface graphique très proche de l'interface par commande de "alsamixer". |
gnome-volume-control | Permet de modifier le volume des événements sonores ainsi que de choisir le bon périphérique. |
Pour les possesseurs de carte ATI, il est probable que la sortie soit désactivée par défaut, voir ce sujet. Pour l'activer, il faut modifier grub-pc. Avec les droits d'administration, modifiez dans le fichier /etc/default/grub la ligne
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
en
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.audio=1"
puis pour prendre en compte la modification
sudo update-grub
Redémarrer.
Pour trouver le bon périphérique, voici quelques pistes ( à suivre avec l'écran / la TV branché en HDMI, et l'affichage basculé avec twinview le cas échéant)
Dans ce cas ouvrez un terminal et tapez cette commande :
aplay -D plughw:2,9 /usr/share/sounds/alsa/Front_Center.wav
Si cette commande vous retourne une erreur de type :
aplay: main:654: Erreur d'ouverture audio: Aucun fichier ou dossier de ce type
changez dans la commande en question les chiffres 2,9
par ceux correspondant à votre périphérique digital.
Pour l'identifier vous pouvez vous aider de la liste des périphériques en listant le fichier /proc/asound/devices
cat /proc/asound/devices
. Vous y trouverez tous vos périphériques son, identifiés comme suit
1: : sequencer 2: [ 0] : control 3: [ 0- 3]: digital audio playback 4: [ 0- 0]: hardware dependent 5: [ 1] : control 6: [ 1- 0]: digital audio playback 7: [ 1- 0]: digital audio capture 8: [ 1- 3]: digital audio playback 9: [ 1- 2]: digital audio capture 10: [ 1- 0]: hardware dependent 11: [ 2] : control 12: [ 2- 3]: digital audio playback 13: [ 2- 7]: digital audio playback 14: [ 2- 8]: digital audio playback 15: [ 2- 9]: digital audio playback 16: [ 2- 0]: hardware dependent 17: [ 2- 1]: hardware dependent 18: [ 2- 2]: hardware dependent 19: [ 2- 3]: hardware dependent 33: : timer
Une fois trouvé le bon périphérique, on va forcer pulseaudio à créer une entrée pour rediriger le son vers ce périphérique.Avec les drois d'administration, modifiez le fichier /etc/pulse/default.pa et à la fin rajoutez la ligne :
load-module module-alsa-sink device=hw:2,9
remplacez hw:2,9 par les n° correspondants à votre périphérique tel que déterminé plus avant.
Après un redémarrage, allez dans le panneau de contrôle de son situé en haut à droite de votre écran et sélectionnez comme sortie "NVidia stéréo"
Si vous devez à chaque fois sélectionner la Sortie HDMI lorsque vous branchez un câble HDMI ce script est fait pour vous :
#! /bin/bash # NAME: hotplugtv # PATH: /usr/local/bin # DESC: Update pulseaudio output device when HDMI TV plugged / unplugged # CALL: called from /etc/udev/rules.d/99-monitor-hotplug.rules # DATE: Created Nov 26, 2016. # NOTE: logs output using log-file # UPDT: Dec 14, 2016 - Sometimes /sys/class/drm/card0 & sometimes /sys/class/drm/card1 # so use /sys/class/dmcard* instead. export PULSE_RUNTIME_PATH="/run/user/1000/pulse/"; if [[ $(cat /sys/class/drm/card*-HDMI-A-1/status | grep -Ec "^connected") -eq 1 ]]; then # log-file "HDMI TV connected" ~/bin/log-hotplugtv; /bin/sleep 2; sudo -u rick -E pacmd set-card-profile 0 output:hdmi-stereo; else # log-file "HDMI TV disconnected" ~/bin/log-hotplugtv; sudo -u rick -E pacmd set-card-profile 0 output:analog-stereo; fi exit 0
sudo chmod +x hotplugtv
# NAME: 99-hotplugtv.rules # PATH: /etc/udev/rules.d # DESC: Update pulseaudio output device when HDMI TV plugged / unplugged # CALL: automatically called on system events # DATE: Created Nov 26, 2016. # NOTE: in future may requre systemd service hooks ACTION=="change", SUBSYSTEM=="drm", ENV{HOTPLUG}=="1", RUN+="/usr/local/bin/hotplugtv"
sudo udevadm control --reload-rules
N'hésitez pas à consulter l'original de l'astuce qui est plus complète.
Si après avoir été connecté à une source HDMI, votre ordinateur ne produit plus aucun son malgré le fait que le bon périphérique soit sélectionné dans la paramètres audio, vous pouvez alors utiliser pavucontrol à la place qui résoudra le problème.
Contributeur principal : Spelth.