[Pulseaudio] Pulseaudio m'a tuer
En lettres de pixels sur le mur
Système et matériels / Cartes son et périphériques audio

Fopossum Membre non connecté
-
- Voir le profil du membre Fopossum
- Inscrit le : 15/07/2012
J'ai comme un putain de soucis avec Pulseaudio qui commence à me prendre la tête.
La réponse "vire pulseaudio" n'étant pas accepté, passons à la description du susdit problème.
Prennez une machine, un Compaq nx8220, on est dans la gamme pro. C'est un peu vienx, mais ça suffit largement pour la plus grande de mes filles en terme de PC. C'est une machine de récup en plus, donc à cheval donné toussa.
Je récupère la machine, je vire le Windows XP qu'il y avait dessus et j'installe allégrement Mageia 1 dessus. Tout va bien, ça fonctionne nickel. Youpie.
Vient la sortie de Mageia 2. J'attends un peu avant de faire la mise à jour, je lis bien les erratas, releases notes et tout ce qui s'en suit. La mise à jour se déroule parfaitement. Sauf que. Benh oui, y'a toujours un sauf, un mais, enfin, le truc alakon qui fait chier.
Comme le dit le titre, Pulseaudio m'a tuer. Et puis bien.
Ce PC est doté d'une "carte son" intel ICH6
Extrait d'un lspci -vvk
Code :
00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03)
Subsystem: Hewlett-Packard Company Compaq nw8240/nx8220
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 21
Region 0: I/O ports at 3100 [size=256]
Region 1: I/O ports at 3200 [size=64]
Region 2: Memory at c8c01000 (32-bit, non-prefetchable) [size=512]
Region 3: Memory at c8c02000 (32-bit, non-prefetchable) [size=256]
Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Kernel driver in use: snd_intel8x0
Elle est parfaitement reconnue, c'est a priori le bon pilote qui est chargé. En tout cas, elle "fonctionne".
Le problème est simple. Allez savoir pourquoi, pulseaudio a décidé que le canal principal était le "mono" et pas le "stéréo". Donc, le son Mono à fond, le "stéréo" muet et au minimum. Du coup, pas de son jusqu'à ce que je ressort ce bon vieil alsamixer pour monter le volume du bon canal. Chose amusante, quand on coupe le Mono, il coupe le PCM aussi. Et il faut que les trois canaux, Mono, Stereo et PCM soit "allumés" pour avoir du son.
J'ai bien sûr regardé du côté de paprefs, du mcc et de pavucontrol et rien. Rien de rien.
J'ai viré le /var/lib/alsa/asound.state en espérant que la sauvegarde des niveaux se fasse correctement et que je retrouve le son après un reboot, mais toujours rien.
Donc, là, je commence à sérieusement tourner en rond et ma fille commence à gueuler de plus en plus parce que elle ne peut pas regarder les DVD dans sa chambre ou aller mater des vidéos de petits chats sur Youtube.
Si vous avez la moindre petite idée, je suis preneur.
Édité par Fopossum Le 16/07/2012 à 14h25
Fopossum :
Allez savoir pourquoi, pulseaudio a décidé que le canal principal était le "mono" et pas le "stéréo".
Je suppose que la solution n'est pas aussi simple que ça, mais, à tout hasard, je me lance :
Sous KDE, je fais un clic droit de l'icône de Kmix, et j'ai, dans la liste : "Choisissez le canal principal"
joel

Fopossum Membre non connecté
-
- Voir le profil du membre Fopossum
- Inscrit le : 15/07/2012
joel :
Sous KDE, je fais un clic droit de l'icône de Kmix, et j'ai, dans la liste : "Choisissez le canal principal"
Sous KDE, je fais un clic droit de l'icône de Kmix, et j'ai, dans la liste : "Choisissez le canal principal"
Merci Joel pour l'essai

Malheureusement, le canal principal c'est... Pulseaudio.... Donc, zeb, marche pas...

Adrien.D Membre non connecté
-
- Voir le profil du membre Adrien.D
- Inscrit le : 30/05/2011
- Site internet
- Groupes :
lançons nous également.
Dans pulse audio, via pavucontrol dans l'onglet configuration, qu'as-tu comme cartes et quels ports sont sélectionnés ?
Si tu as deux cartes, une mono, et l'autre stéréo, peux-tu éteindre la mono et mettre la stéréo avec la petite coche verte pour définir ce périphérique par défaut ?
Si cela ne fonctionne pas, que donne la réinitialisation des valeurs dans la configuration du son via le CCM ? (après déconnexion et reconnexion)
Merci

Config : PC Fixe : X470 GAMING PRO- AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (Pilote libre) - Gentoo Linux - GNOME Desktop - Kernel 5.10 LTS
Ancien Webmaster de MageiaLinuxOnline. Les remplaçants assurent !
Ancien Webmaster de MageiaLinuxOnline. Les remplaçants assurent !


Fopossum Membre non connecté
-
- Voir le profil du membre Fopossum
- Inscrit le : 15/07/2012
Adrien.D :
Salut,
lançons nous également.
Dans pulse audio, via pavucontrol dans l'onglet configuration, qu'as-tu comme cartes et quels ports sont sélectionnés ?
Si tu as deux cartes, une mono, et l'autre stéréo, peux-tu éteindre la mono et mettre la stéréo avec la petite coche verte pour définir ce périphérique par défaut ?
lançons nous également.
Dans pulse audio, via pavucontrol dans l'onglet configuration, qu'as-tu comme cartes et quels ports sont sélectionnés ?
Si tu as deux cartes, une mono, et l'autre stéréo, peux-tu éteindre la mono et mettre la stéréo avec la petite coche verte pour définir ce périphérique par défaut ?
Le truc, c'est qu'il n'y a qu'une seule carte...
Mais par acquis de conscience, je vérifierais ce soir.
Adrien.D :
Si cela ne fonctionne pas, que donne la réinitialisation des valeurs dans la configuration du son via le CCM ? (après déconnexion et reconnexion)
Si cela ne fonctionne pas, que donne la réinitialisation des valeurs dans la configuration du son via le CCM ? (après déconnexion et reconnexion)
Oups, j'ai oublié cette partie.
La réinit me passe les niveaux à zéro sur le canal stéréo.
Faudra que je fasse un screenshot ça sera plus parlant....
Édité par Fopossum Le 16/07/2012 à 12h21

Adrien.D Membre non connecté
-
- Voir le profil du membre Adrien.D
- Inscrit le : 30/05/2011
- Site internet
- Groupes :
dans ce cas, si tu n'as qu'une carte, essaie de jouer sur la liste déroulante "port :" si tu ne l'as pas déjà fait

Merci

Config : PC Fixe : X470 GAMING PRO- AMD Ryzen 5 2600X - 16Go RAM - Radeon RX 560 (Pilote libre) - Gentoo Linux - GNOME Desktop - Kernel 5.10 LTS
Ancien Webmaster de MageiaLinuxOnline. Les remplaçants assurent !
Ancien Webmaster de MageiaLinuxOnline. Les remplaçants assurent !


Papoteur Membre non connecté
-
- Voir le profil du membre Papoteur
- Inscrit le : 03/10/2011
- Groupes :
-
Modérateur
-
Équipe Mageia
-
Administrateur
-
Forgeron
J'ai déjà eu des soucis de ce genre, avec Mageia 1, un canal connecté d'office à "Muet", sans contrôle ailleurs que dans alsamixer.
J'ai contourné le truc en faisant une sauvegarde de la config d'alsamixer, et en ajoutant une ligne de commande exécutée au démarrage qui recharge ledit fichier préalablement sauvegardé.
Là, je n'ai plus les commandes sous la main, mais je me dis que c'est à ta portée.

Yves

Fopossum Membre non connecté
-
- Voir le profil du membre Fopossum
- Inscrit le : 15/07/2012
Papoteur :
Bonjour,
J'ai déjà eu des soucis de ce genre, avec Mageia 1, un canal connecté d'office à "Muet", sans contrôle ailleurs que dans alsamixer.
J'ai déjà eu des soucis de ce genre, avec Mageia 1, un canal connecté d'office à "Muet", sans contrôle ailleurs que dans alsamixer.
Ah ! Donc, c'est pas nouveau ce genre de trucs !
Papoteur :
J'ai contourné le truc en faisant une sauvegarde de la config d'alsamixer, et en ajoutant une ligne de commande exécutée au démarrage qui recharge ledit fichier préalablement sauvegardé.
Là, je n'ai plus les commandes sous la main, mais je me dis que c'est à ta portée.
J'ai contourné le truc en faisant une sauvegarde de la config d'alsamixer, et en ajoutant une ligne de commande exécutée au démarrage qui recharge ledit fichier préalablement sauvegardé.
Là, je n'ai plus les commandes sous la main, mais je me dis que c'est à ta portée.

Mouais, le genre de solutions dont j'aimerais bien me passer. Suis un fou moi ! J'aime quand tout fonctionne comme ça devrait sans avoir besoin de faire de la bidouille.
Je crois que je vais me résigner à jeter un oeil à comment fonctionne systemd pour alsa histoire de voir si y'a pas une merde de ce côté là, sur la sauvegarde des niveaux.
Ca n'empêche que je suis preneur de toutes les idées, même les solutions de contournement foireuses :p

Papoteur Membre non connecté
-
- Voir le profil du membre Papoteur
- Inscrit le : 03/10/2011
- Groupes :
-
Modérateur
-
Équipe Mageia
-
Administrateur
-
Forgeron
Fopossum :
Mouais, le genre de solutions dont j'aimerais bien me passer. Suis un fou moi ! J'aime quand tout fonctionne comme ça devrait sans avoir besoin de faire de la bidouille.
Ca n'empêche que je suis preneur de toutes les idées, même les solutions de contournement foireuses :p
Mouais, le genre de solutions dont j'aimerais bien me passer. Suis un fou moi ! J'aime quand tout fonctionne comme ça devrait sans avoir besoin de faire de la bidouille.
Ca n'empêche que je suis preneur de toutes les idées, même les solutions de contournement foireuses :p
Mais, faut que tu fasse vite avant que ta fille ne te le renvoie par voie aérienne

Faut-il que je regarde les détails expliqués plus haut ?
Yves

Enzolyte Membre non connecté
-
- Voir le profil du membre Enzolyte
- Inscrit le : 28/04/2008
- Groupes :
Allez zou, un peu vieux mais je me rappelais de ça, tiens jettes-y un coup d'oeil

http://www.mageialinux-online.org/forum/topic-10073+pour-ceux-qui-en-ont-marre-de-lancer-alsamixer-pour-configurer-le-son.php
"Profites de l'instant présent car hier n'est plus et demain ne viendra peut-être jamais."

Fopossum Membre non connecté
-
- Voir le profil du membre Fopossum
- Inscrit le : 15/07/2012
D'abord, merci pour votre aide

Adrien.D :
dans ce cas, si tu n'as qu'une carte, essaie de jouer sur la liste déroulante "port :" si tu ne l'as pas déjà fait
dans ce cas, si tu n'as qu'une carte, essaie de jouer sur la liste déroulante "port :" si tu ne l'as pas déjà fait
Vérification faite, le canal Stereo n'apparaît pas dans les ports. Comme si PulseAudio ignorait royalement ce canal.
Papoteur :
Mais, faut que tu fasse vite avant que ta fille ne te le renvoie par voie aérienne 
Faut-il que je regarde les détails expliqués plus haut ?

Faut-il que je regarde les détails expliqués plus haut ?
Disons que ça pourrait aider

Enzolyte :
Allez zou, un peu vieux mais je me rappelais de ça, tiens jettes-y un coup d'oeil
http://www.mageialinux-online.org/forum/topic-10073+pour-ceux-qui-en-ont-marre-de-lancer-alsamixer-pour-configurer-le-son.php
Allez zou, un peu vieux mais je me rappelais de ça, tiens jettes-y un coup d'oeil

http://www.mageialinux-online.org/forum/topic-10073+pour-ceux-qui-en-ont-marre-de-lancer-alsamixer-pour-configurer-le-son.php
Typiquement le genre de workaround que j'aimerais si possible éviter. D'abord, il n'est valable que pour chaque session, ce qui veut dire que si nouvel utilisateur faut le refaire. Ensuite il est dépendant du WM, là, j'ai de la chance, c'est KDE que je connais mais si subitement elle voulait utiliser gnome3 j'aurais l'air d'un con

Le truc qui me turlupine tagada tsointsoin, c'est que l'ICH6, c'est pas récent et dans le genre connu de chez connu. Donc, je suis en train de me demander si il n'y aurait pas un changement dans la manière dont Pulse s'adresse à ce chipset via ALSA et qui dépendrait peut-être de la manière dont le chipset est configuré au niveau du BIOS. Va falloir que j'investigue cette piste.
Je vous tiens bien évidemment au courant.

Fopossum Membre non connecté
-
- Voir le profil du membre Fopossum
- Inscrit le : 15/07/2012
Après un upgrade du BIOS, qui m'a valu de devoir me faire un LiveCD Windows, merci HP / Compaq, rien de configurable au niveau du chipset son.
J'ai un moment espéré que ça ne soit pas le bon pilote de chargé et ai commencé à blacklister snd_intel8x0 pour croire que le snd_hda_intel fonctionnerait et rien, pas de chance, mon ICH6 n'est pas un Intel HD.
Je commence à soupçonner que cela pourrait être le codec mais pas sûr quand même. J'en viens donc à penser qu'il va me falloir faire un sââââââle hack pour recoller un asound.state valable, et si possible lors du boot afin de ne pas être dépendant du profil du user loggué.
J'aime pas…
Par contre, en regardant le boot plus attentivement, j'ai vu passer un truc du genre « Reconfiguring hardware », je n'ai pas la ligne exacte en tête puisque ce connard de systemd fait démarrer la session graphique sur le TTY1 me cachant donc les messages de boot.
Donc, quelqu'un aurit-il vu ce comportement ? Est-ce normal ? Ou serait-ce là la raison de mes déboires ?
PS : Oui, je n'aime pas les « lennarteries » vous le verrez


PaLmAs Membre non connecté
-
- Voir le profil du membre PaLmAs
- Inscrit le : 02/04/2007
- Groupes :
tu as vérifié du coté des paquets alsa et pulseaudio qu'il n'en manqué pas ? (du style pulseaudio-alsa ou autres)
En quoi régler alsa avec un alsa store et ensuite un alsa restore te gène pour résoudre le problème ?
Citation :
D'abord, il n'est valable que pour chaque session, ce qui veut dire que si nouvel utilisateur faut le refaire. Ensuite il est dépendant du WM, là, j'ai de la chance, c'est KDE que je connais mais si subitement elle voulait utiliser gnome3 j'aurais l'air d'un con
Puis c'est pas franchement... Pérenne on dira :p

Pourquoi ? A la rigueur tu place le restore dans un fichier de boot (ou dans init.d) et pis voilà il sera valable pour tous les utilisateurs et tous les wm ! ? bon ce sera le même réglage pour tous les utilisateurs mais bon !

Fopossum Membre non connecté
-
- Voir le profil du membre Fopossum
- Inscrit le : 15/07/2012
Et tout d'abord, merci de t’intéresser à mon cas

PaLmAs :
Salut,
tu as vérifié du coté des paquets alsa et pulseaudio qu'il n'en manqué pas ? (du style pulseaudio-alsa ou autres)
tu as vérifié du coté des paquets alsa et pulseaudio qu'il n'en manqué pas ? (du style pulseaudio-alsa ou autres)
Étant donné que dès qu'on remet le mixer à un niveau normal ça fonctionne, que alsamixer commence par m’afficher les niveaux de pulse et qu'il faut que je choisisse effectivement la carte pour faire les réglages, oui, tout les paquets sont installés.
PaLmAs :
En quoi régler alsa avec un alsa store et ensuite un alsa restore te gène pour résoudre le problème ?
(...)
Pourquoi ? A la rigueur du place le restore dans un fichier de boot (ou dans init.d) et pis voilà il sera valable pour tous les utilisateurs et tous les wm ! ?
En quoi régler alsa avec un alsa store et ensuite un alsa restore te gène pour résoudre le problème ?
(...)
Pourquoi ? A la rigueur du place le restore dans un fichier de boot (ou dans init.d) et pis voilà il sera valable pour tous les utilisateurs et tous les wm ! ?
Dans le désordre, choisis la ou les réponses qui te paraissent les plus pertinentes, mais en gros, je ne veux pas faire un script ou une conf particulière pour les raisons suivantes :
- Parce que c'est un sale hack non pérenne qui risque de fumer sur une quelconque mise à jour.
- Parce que c'est le boulot des scripts d'init de stocker les niveaux des canaux des cartes son.
- Parce que comme c'est systemd, /etc/init.d devient "deprecated"
- Parce que les services de systemd sont censés stocker et restaurer les niveaux des cartes sons.
- Parce que je ne veux pas avoir à m'emmerder à maintenir une conf spécifique pour une seule machine alors que sur les six autres, toutes distributions confondues, ça fonctionne out of the box
- Parce que ça fonctionnait très bien sous Mageia 1
- Parce que j'aime comprendre quand ça déconne et pourquoi et que le sale hack n'est pas satisfaisant intellectuellement parlant
- Parce que je ne vais pas me laisser baiser par deux produits made in Lennart
Donc, pour l'instant, je ne sais pas et je ne trouve pas.... Et ça, ça me gonfle profond.

PaLmAs Membre non connecté
-
- Voir le profil du membre PaLmAs
- Inscrit le : 02/04/2007
- Groupes :

Citation :
Parce que c'est un sale hack non pérenne qui risque de fumer sur une quelconque mise à jour.
au pire ça prend 2 lignes ! pour les mises à jour je vois ce qui pourrai le faire bugguer à la rigueur tu risque de l'oublier !
Citation :
Parce que c'est le boulot des scripts d'init de stocker les niveaux des canaux des cartes son.
Parce que comme c'est systemd, /etc/init.d devient "deprecated"
Parce que les services de systemd sont censés stocker et restaurer les niveaux des cartes sons.
Parce que comme c'est systemd, /etc/init.d devient "deprecated"
Parce que les services de systemd sont censés stocker et restaurer les niveaux des cartes sons.
vi mais bon quand ça marche même avec un petit hack, bin ça marche

Citation :
Parce que je ne veux pas avoir à m'emmerder à maintenir une conf spécifique pour une seule machine alors que sur les six autres, toutes distributions confondues, ça fonctionne out of the box
Parce que ça fonctionnait très bien sous Mageia 1
Parce que ça fonctionnait très bien sous Mageia 1
roh pour ta fille tu peux faire l'effort

Citation :
Parce que j'aime comprendre quand ça déconne et pourquoi et que le sale hack n'est pas satisfaisant intellectuellement parlant
Parce que je ne vais pas me laisser baiser par deux produits made in Lennart
Parce que je ne vais pas me laisser baiser par deux produits made in Lennart
bon là j'ai rien à dire !

bon pour que mon poste ne soit pas inutile quand même, je pense que tu as du déjà regarder mais au cas où, ils disent quoi les fichier log ?
Citation :
Pour empêcher les applications d'utiliser l'émulation OSS d'ALSA et de contourner ainsi PulseAudio il faut enlever le module snd_pcm_oss en exécutant :
rmmod snd_pcm_oss
rmmod snd_pcm_oss
au cas où aussi !
y a ça aussi mais ça sent le hack vilain pas beau que tu veux pas !
Citation :
Pulse overwrites ALSA settings
Pulseaudio usually overwrites the ALSA settings- for example set with alsamixer- at start up, even when the alsa daemon is loaded. Since there seems to be no other way to restrict this behaviour, a workaround is to restore the alsa settings again after pulseaudio had started. Add the following command to .xinitrc .bash_login or any other autostart file:
restore_alsa() {
while [ -z "`pidof pulseaudio`" ]; do
sleep 0.5
done
alsactl -f /var/lib/alsa/asound.state restore
}
restore_alsa &
Pulseaudio usually overwrites the ALSA settings- for example set with alsamixer- at start up, even when the alsa daemon is loaded. Since there seems to be no other way to restrict this behaviour, a workaround is to restore the alsa settings again after pulseaudio had started. Add the following command to .xinitrc .bash_login or any other autostart file:
restore_alsa() {
while [ -z "`pidof pulseaudio`" ]; do
sleep 0.5
done
alsactl -f /var/lib/alsa/asound.state restore
}
restore_alsa &
sources -> https://wiki.archlinux.org/index.php/PulseAudio bien fournit et bien expliqué !
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie