Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/04/2016, à 16:57

GrumD

[50% Résolu] Désactiver sortie analogique et forcer sortie HDMI ?

Bonjour à tous !

Je me tourne vers vous, spécialistes Linux, car cela fait plusieurs jours que je cherche à régler un bug de son sur un HTPC et je n'y arrive pas...

Explications :

En fait, c'est sur le HTPC de mes parents. Il est basé sur une carte mère ASRock N3150M. Le son est géré par le chipset audio intégré (Realtek ALC887). Il n'y a pas de carte son séparée.
Dans les paramètres de son d'Ubuntu 16.04, on retrouve donc les 2 sorties : HDMI et Analogique (jack), comme le montre cette image :
1461938811.png

Lorsqu'on sélectionne la sortie HDMI, il y a bien du son. Si je lance une musique ou que je vais sur YouTube, ça fonctionne.
Lorsqu'on sélectionne la sortie "Haut-parleurs" (analogique), il n'y a pas de son. Normal car rien n'est branché sur cette sortie. Le PC est relié à la TV via le câble HDMI.

Mais quel est le problème alors ?

Lorsque je lance un film, via KODI par exemple, Ubuntu bascule automatiquement sur le mode analogique, sans que je lui demande quoi que ce soit... Du coup, plus de son...
Je suis obligé de faire un ALT+TAB pour revenir sur le bureau (sans arrêter le film) et remettre manuellement sur HDMI. Pas pratique du tout.

J'ai donc fait quelques recherches pour savoir si on pouvait forcer une sortie par défaut et je suis tombé sur ce sujet du forum, datant de 2013.
J'ai tenté certaines solutions proposées, mais ça n'a pas fonctionné...

J'ai lancé la commande

cat /proc/asound/modules

pour lister mes périphériques audio, et ça ma retourné cela :

htpckodi@htpckodi-salon:~$ cat /proc/asound/modules
 0 snd_hda_intel
htpckodi@htpckodi-salon:~$

Normal, je n'ai que le chipset audio intégré...

J'ai ensuite lancé la commande

aplay -l

qui m'a retourné ceci :

htpckodi@htpckodi-salon:~$ aplay -l
**** Liste des Périphériques Matériels PLAYBACK ****
carte 0: PCH [HDA Intel PCH], périphérique 0: ALC887-VD Analog [ALC887-VD Analog]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 0: PCH [HDA Intel PCH], périphérique 3: HDMI 0 [HDMI 0]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 0: PCH [HDA Intel PCH], périphérique 7: HDMI 1 [HDMI 1]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 0: PCH [HDA Intel PCH], périphérique 8: HDMI 2 [HDMI 2]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
htpckodi@htpckodi-salon:~$

J'ai donc tenté de créer un fichier .asoundrc dans le home, comme expliqué, en y rentrant

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

J'ai rebooté et retenté de lancer un film, le problème persiste... hmm
J'ai alors essayé d'y mettre :

pcm.!HDMI {

        type plug

        slave {

                pcm "hw:0,3"             

        }

}

Pareil, ça ne fonctionne pas mieux... J'ai donc effacé ce fichier .asoundrc.

J'ai ensuite tenté la manipulation trouvée dans la documentation du site. J'ai rajouté la ligne suivante dans /etc/pulse/default.pa

load-module module-alsa-sink device=hw:0,8

(j'ai trouvé les chiffres 0,8 en suivant les explications).
Là c'est pire, car ça me rajoute une sortie "fantôme" dans les paramètres de son et on n'entend absolument rien...
J'ai donc remis le fichier default.pa comme à l'origine...

Pour terminer, et c'est là que vous allez pouvoir m'éclairer, je suis revenu sur ce sujet et j'ai vu qu'on pouvait "blacklister" un périphérique, via le fichier /etc/modprode.d/blacklist.conf

J'ai donc fait un

lsmod | grep snd_

qui m'a sorti ça

htpckodi@htpckodi-salon:~$ lsmod | grep snd_
snd_hda_codec_hdmi     53248  1
snd_hda_codec_realtek    81920  1
snd_hda_codec_generic    77824  1 snd_hda_codec_realtek
snd_intel_sst_acpi     16384  0
snd_intel_sst_core     73728  1 snd_intel_sst_acpi
snd_soc_rt5670        126976  0
snd_hda_intel          36864  3
snd_soc_rl6231         16384  1 snd_soc_rt5670
snd_soc_sst_mfld_platform    90112  1 snd_intel_sst_core
snd_hda_codec         135168  4 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_intel
snd_soc_core          212992  2 snd_soc_rt5670,snd_soc_sst_mfld_platform
snd_hda_core           73728  5 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
snd_hwdep              16384  1 snd_hda_codec
snd_compress           20480  1 snd_soc_core
ac97_bus               16384  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_pcm               106496  8 snd_soc_rt5670,snd_soc_core,snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_soc_sst_mfld_platform,snd_pcm_dmaengine,snd_hda_core
snd_seq_midi           16384  0
snd_seq_midi_event     16384  1 snd_seq_midi
snd_rawmidi            32768  1 snd_seq_midi
snd_seq                69632  2 snd_seq_midi_event,snd_seq_midi
snd_seq_device         16384  3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer              32768  2 snd_pcm,snd_seq
snd                    81920  20 snd_hda_codec_realtek,snd_soc_core,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_soc_sst_mfld_platform,snd_seq_device,snd_compress
htpckodi@htpckodi-salon:~$

Et c'est là que je bloque. Je ne sais pas du tout quelle ligne choisir pour blacklister/désactiver la sortie analogique et garder uniquement la sortie HDMI fonctionnelle.
Quelqu'un pourrait-il m'expliquer quoi prendre ?

Ce serait parfait si ça fonctionnait car ainsi, Ubuntu ne pourrait plus basculer tout seul sur la sortie analogique et serait obligé de rester sur la sortie HDMI ! big_smile

N'hésitez pas à me demander plus de renseignements.
Merci d'avance pour votre aide.

Dernière modification par GrumD (Le 18/08/2016, à 14:27)


Proton Database : Liste de tous les jeux Windows compatibles Linux grâce à Steam Play.
FCK DRM : le mouvement Anti-DRM de GOG !

Hors ligne

#2 Le 29/04/2016, à 18:53

mikedafunk

Re : [50% Résolu] Désactiver sortie analogique et forcer sortie HDMI ?

Bonjour,

Dans Kodi il y a des paramètres pour choisir sa sortie audio, ça peut éventuellement  t'aider :
http://geekattitioude.fr/openelec-parametre-audio.php


Lubuntu 22.04 sur Lenovo AX81 et pas mal d'Amiga
Mon blog : http://mikedafunk.over-blog.org

Hors ligne

#3 Le 29/04/2016, à 20:05

GrumD

Re : [50% Résolu] Désactiver sortie analogique et forcer sortie HDMI ?

Salut mikedafunk !

Tu as parfaitement raison, mais l'option dans Kodi (Jarvis 16.1) est déjà sur HDMI. hmm
En fait, j'ai l'impression que le réglage par défaut Ubuntu est prioritaire sur le réglage dans Kodi.

Du coup, si dans Kodi c'est bien sur HDMI mais que ça ne l'est pas aussi sur Ubuntu, je n'ai pas de son...

C'est pour ça que j'aimerai désactiver la sortie analogique, si possible, pour forcer le système à rester sur la sortie HDMI, sans qu'il puisse changer.

Dernière modification par GrumD (Le 29/04/2016, à 20:06)


Proton Database : Liste de tous les jeux Windows compatibles Linux grâce à Steam Play.
FCK DRM : le mouvement Anti-DRM de GOG !

Hors ligne

#4 Le 29/04/2016, à 20:14

mikedafunk

Re : [50% Résolu] Désactiver sortie analogique et forcer sortie HDMI ?

Sur raspberry pi, il est possible de forcer la sortie analogique à l'aide de cette commande : pi@raspberrypi ~ $ amixer cset numid=3 1
Du coup je pense de la même manière que c'est faisable de forcer la sortie hdmi
A toi de jouer ! http://manpages.ubuntu.com/manpages/pre … xer.1.html


Lubuntu 22.04 sur Lenovo AX81 et pas mal d'Amiga
Mon blog : http://mikedafunk.over-blog.org

Hors ligne

#5 Le 02/05/2016, à 15:19

GrumD

Re : [50% Résolu] Désactiver sortie analogique et forcer sortie HDMI ?

Merci mikedafunk, mais ta solution n'a malheureusement pas fonctionné. sad

J'ai continué à bidouiller ça hier, au calme, car je n'étais pas là samedi et j'ai trouvé une piste, voire carrément le coupable.
Et ce coupable serait... PulseAudio !

Je me suis servi de ce sujet sur AskUbuntu pour faire un test.
J'ai rentré la commande :

echo "autospawn = no" > $HOME/.config/pulse/client.conf

pour créer un fichier "client.conf" dans ~/.config/pulse afin d'éviter que PulseAudio ne se relance tout seul après avoir été temporairement désactivé.
Puis j'ai ensuite tué le processus PulseAudio avec :

pkill -f pulseaudio
ps aux | grep pulse

Après cette manipulation, ça fonctionne parfaitement. Le son ne switche plus tout seul sur la sortie analogique lorsque je lance un film dans Kodi.

Par contre, il y a un gros inconvénient : je n'ai du son QUE dans Kodi maintenant... Et plus de son du tout dans le reste du système !
Dans les paramètres de son, les 2 sorties ont disparu et l'icône dans la zone de notification montre que le son est coupé/muté... Ce qui peut paraître normal me direz vous...

Du coup, maintenant que j'ai avancé dans mon problème, j'ai 2 questions :

  1. Est-il possible de rétablir le son dans le reste du système, sans PulseAudio ?

  2. Sinon, est-il possible de désactiver PulseAudio uniquement pour Kodi ? Avec un script ou une autre bidouille ?

Merci d'avance à ceux qui pourront m'aider à finaliser la résolution de mon problème.


Proton Database : Liste de tous les jeux Windows compatibles Linux grâce à Steam Play.
FCK DRM : le mouvement Anti-DRM de GOG !

Hors ligne