Page 1 sur 1

[PulseAudio] seulement une application à la fois (contourné)

Publié : sam. 11 févr. 2012, 05:10
par omeleet
Bonjour, je post ici car je n'ai pas trouvé mon bonheur dans mes recherches mais si je me suis trompé pardon d'avance :chinois:

N'ayant pas les notifications sonores depuis quelques temps (thunderbird, skype et d'autres) je décide de configurer pulseaudio or il se révèle que c'est une véritable pain in zi arse pour moi ; car contrairement aux croyances populaires, le schmilblick n'est pas un œuf, c'est pulseaudio :o

1) Le problème principal est que je ne ne peux avoir qu'une application sonore à la fois, impossible d'avoir vlc et mpd en même temps par exemple. Je précise que chacune des applications sonores que j'utilise fonctionnent toutes, mais seulement une à la fois =_= (ce qui n'était pas le cas avec alsa, mais j'avais pas les notifs du coup).

2) Un autre problème est que maintenant quand j'appuie sur mon bouton mute, qui est bindé dans openbox à amixer set Master toggle le son se mute mais ne se démute pas quand je rappuie dessus, j'avoue ne pas avoir beaucoup cherché pour palier à ce problème mais si quelqu'un a une solution rapide/lien, merci :)

3) Au démarrage et à l'extinction du pc, j'ai un gros POC dans mon casque, je crois que c'est lors du démarrage de l'udev, ça a peut-être à voir avec le fait que pulse utilise udev pour détecter les pilotes, je mettrai le fichir de config en dessous. Précision : quand je mute le son, je n'ai pas de POC ni à l'exctinction, ni au démarrage suivant

4) J'ai pu régler pas mal de soucis associés à la qualité du son en mettant l'échantillonage à 48000 partout mais j'ai encore quelques lags sonores sous vlc. J'ai suivi le wiki disant qu'il faut augmenter la taille du cache de 300 à 1000-1500, ça n'a pas réglé le problème :)

Mais si bien sûr quelqu'un sait comment régler tous mes problèmes (autrement dit pas de lags, plusieurs applis en même temps notifs comprises, pas d'oreilles qui explosent au démarrage) sans passer par pulse, je suis tout ouïe :D

Il se peut que ce soit un peu le bazar ou un peu bizarre, après X reboot et X reconfigurations... J'apprécierais un œil neuf :mrgreen:
Je mets notamment les scripts de démarrage successifs au cas où, en sachant que ce que je fais quand l'ordi démarre est : login/mdp en console, et startx juste après.
Et si vous avez besoin d'autres infos, n'hésitez pas ! :chinois:

Voici quelques c/c:

Listes des paquets associés à pulseaudio

Code : Tout sélectionner

##### yaourt -Qs pulse
multilib/lib32-libcanberra-pulse 0.28-2
    PulseAudio plugin for libcanberra (32-bit)
multilib/lib32-libpulse 1.1-2
    A featureful, general-purpose sound server (32-bit client libraries)
extra/libao 1.1.0-2
    Cross-platform audio output library and plugins
extra/libcanberra-pulse 0.28-2
    PulseAudio plugin for libcanberra
extra/libpulse 1.1-2
    A featureful, general-purpose sound server (client library)
extra/paprefs 0.9.10-2
    A simple GTK-based configuration dialog for PulseAudio
extra/pavucontrol 1.0-1
    A GTK volume control tool for PulseAudio
extra/pulseaudio 1.1-2
    A featureful, general-purpose sound server
extra/pulseaudio-alsa 2-1
    ALSA Configuration for PulseAudio
Plusieurs pulseaudio ouverts ?

Code : Tout sélectionner

##### ps aux | grep pulse
mpd        789  1.1  0.3 425952  6540 ?        Sl   04:11   0:26 /usr/bin/pulseaudio --start --log-target=syslog -vvvv
mpd        941  0.0  0.1  69020  2724 ?        S    04:11   0:00 /usr/lib/pulse/gconf-helper
ours      1106  0.7  0.4 521176  9920 ?        S<l  04:13   0:15 /usr/bin/pulseaudio --start
ours      1112  0.0  0.1  68888  2784 ?        S    04:13   0:00 /usr/lib/pulse/gconf-helper
ours      3919  0.0  0.0   8912  1036 pts/3    S+   04:50   0:00 grep pulse
Liste des daemons dancés

Code : Tout sélectionner

##### tail -n1 /etc/rc.conf
DAEMONS=(syslog-ng dbus network ntpd alsa @mpd crond sshd)
J'ai mis @mpd parcequ'il semble qu'il lance un pulseaudio et donc ça met du temps

Script de démarrage linux

Code : Tout sélectionner

##### cat /etc/rc.local
#!/bin/bash

ethtool -s eth0 wol g
ethtool -s eth1 wol g

sudo -u ours pulseaudio -D --start --log-target=syslog
mpc play
exit 0;
Script de démarrage X11

Code : Tout sélectionner

##### cat .xinitrc 
if text -z "$DBUS_SESSION_BUS_ADDRESS" ; then
    eval `dbus-launch --sh-syntax --exit-with-session`
    echo "$DBUS_SESSION_BUS_ADRESS"
fi

exec ck-launch-session openbox-session
Script de démarrage openbox

Code : Tout sélectionner

#### tail -n16 ~/.config/openbox/autostart.sh (ok j'ai compté les lignes :p)
eval `cat /home/ours/.fehbg` &
setxkbmap fr bepo
thunar --daemon &
/usr/lib/notification-daemon-1.0/notification-daemon &
cronwhip
tint2 &
conky &

urxvt -e alsamixer &
urxvt -e ncmpcpp &

amsn &
gajim &
skype &
sonata &
thunderbird &
Config pulseaudio

Code : Tout sélectionner

##### grep '^[^#]' /etc/pulse/default.pa 
.nofail                                         
.fail
load-module module-device-restore
load-module module-stream-restore
load-module module-card-restore
load-module module-augment-properties
.ifexists module-udev-detect.so
load-module module-udev-detect tsched=0
.else
load-module module-detect
.endif
.ifexists module-jackdbus-detect.so
.nofail
load-module module-jackdbus-detect
.fail
.endif
.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif
.ifexists module-esound-protocol-unix.so
load-module module-esound-protocol-unix
.endif
load-module module-native-protocol-unix
load-module module-native-protocol-tcp auth-anonymous=1
.ifexists module-gconf.so
.nofail
load-module module-gconf
.fail
.endif
load-module module-default-device-restore
load-module module-rescue-streams
load-module module-always-sink
load-module module-intended-roles
load-module module-suspend-on-idle
.ifexists module-console-kit.so
.nofail
load-module module-console-kit
.fail
.endif
load-module module-position-event-sounds
load-module module-cork-music-on-phone
load-module module-filter-heuristics
load-module module-filter-apply
.ifexists module-dbus-protocol.so
load-module module-dbus-protocol
.endif
Config son global

Code : Tout sélectionner

##### grep '^[^#]' /etc/asound.conf 
pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}
pcm.!default {
     type hw
     card 0
}
ctl.!default {
     type hw
     card 0
}
pcm.pulse_monitor {
  type pulse
  device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
}
ctl.pulse_monitor {
  type pulse
  device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
}
Config son de mon user

Code : Tout sélectionner

##### grep '^[^#]' ~/.asound.conf  
pcm.!default {
  type pulse
  fallback "sysdefault"
  hint {
    show on
    description "Default ALSA Output (currently PulseAudio Sound Server)"
  }
}
ctl.!default {
  type pulse
  fallback "sysdefault"
}
ctl.pulse {
    type pulse
}
pcm.pulse {
    type pulse
}
pcm.pulse_monitor {
  type pulse
  device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
}
ctl.pulse_monitor {
  type pulse
  device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
}
Vous êtes arrivé là suite à une lecture séquentielle ? Courageux ! :copain:

Re: [PulseAudio] seulement une application à la fois

Publié : sam. 11 févr. 2012, 09:46
par FoolEcho
Salut,
omeleet a écrit :Plusieurs pulseaudio ouverts ?
Je n'utilise ni pulseaudio, ni mpd... mais ça n'est clairement pas normal, à mon avis. Tu as bien configuré mpd (et d'autres applications) pour utiliser pulseaudio correctement https://wiki.archlinux.org/index.php/Pu ... _.28MPD.29 ?

Le rc.local qui lance pulseaudio... moyen... à mon avis, ça n'a rien à faire là. :|
omeleet a écrit :Listes des paquets associés à pulseaudio
Je verrai bien un petit lib32-alsa-plugins supplémentaire (pour fixer les soucis de flash).



Mais je repartirai plutôt sur alsa: tu as vérifié que des canaux n'étaient pas muets ? (capture de alsamixer)
Aussi voir du côté de https://wiki.archlinux.org/index.php/Ad ... leshooting

Et tu as oublié le plus important :humour: : quelle(s) est(sont) ta(tes) carte(s) son ? Par exemple, un petit hwinfo --sound (à installer).

Re: [PulseAudio] seulement une application à la fois

Publié : sam. 11 févr. 2012, 12:06
par xenom
Bonjour

Effectivement pulseaudio est lancé 2 fois, une fois par mpd, et une fois par l'utilisateur ours. Je n'ai jamais utilisé mpd avec pulseaudio, mais si mpd lance pulseaudio, il faut enlever la ligne dans ton rc.local.

J'utilise pulseaudio sur mon mediacenter et je n'ai pas alsa dans les demons.

Quand tu lance plusieurs applications à la fois, est ce que tu les vois avec pavucontrol?

Re: [PulseAudio] seulement une application à la fois

Publié : sam. 11 févr. 2012, 18:44
par omeleet
D'abord merci pour les réponses :chinois:

J'étais pas sûr pour les 2 serveurs pulseaudio, et bien même en commentant la ligne dans rc.local, j'ai quand même un pulseaudio pour ours, et quand j'essaye de le killer, j'en ai 2 autres qui apparaissent O.O. Je tente de rebooter, encore.
Comment il a fait déjà pour tuer l'Hydre l'autre là ?...

J'étais déjà allé voir sur ce wiki mais je me disais que l'erreur ne venait pas de là vu que j'avais le son nickel avec mpd. Sauf quand ya d'autres applis sonores derrière.
lib32-alsa-plugins installé, je n'avais pas de problème en parcitulier avec le son de flash mais ne sait-on jamais.

En faisant un ps aux | grep pulse juste après le démarrage de X, j'ai vu qu'un processus X-starter lançait pulseaudio. Après un grep pulse un peu bourrin sur tous les fichiers dans /etc, j'ai trouvé le(s) fautifs(s) : /etc/xdg/autostart/pulseaudio.desktop et pulseaudio-kde.desktop. Pourquoi kde ? F**trement aucune idée :o Donc je les ai viré (parceque j'aimerais avoir pulseaudio avant le démarrage de X11, parfois je reste en mode console).

J'avais pas vu dans le wiki d'alsa la partie disant qu'il y a un problème lorsque plusieurs utilisateurs différents veulent accéder au mixer (lien), maintenant que j'ai fait la modification, ça ne change rien :bravo:

Pour l'instant j'ai viré l'autospawn dans /etc/pulse/defaults.pa et j'ai fait un daemon qui en spawn un en tant que mon utilisateur (et non root). Ça règle le problème de "plusieurs audiopulse", mais j'ai les même problèmes qu'avant avec en bonus mpd qui ne fonctionne pas. J'en ai un peu marre là... de toute façon je serai pas chez moi avant dimanche soir, ça me permet de faire une pause :D

Et comme l'a sugéré xenom j'ai retiré alsa des DAEMONS dans /etc/rc.conf et ça n'a pas posé de problème :)
Ou peut-être que si, je ne sais plus quand mpd a refusé de fonctionner... (post fait sur plusieurs heures)

Et pour répondre à la question, pavucontrol n'affiche qu'une seule application à la fois. Dans paprefs j'ai coché la case "Ajouter un périph de sortie virtuel pour une sortie simultanée sur toutes les cartes sons locales" en espérant que ça règle le problème, hélas, non :(

Matériel son

Code : Tout sélectionner

##### hwinfo --sound
14: PCI 1b.0: 0403 Audio device                                 
  [Created at pci.319]
  Unique ID: u1Nb.ub5J74xk772
  SysFS ID: /devices/pci0000:00/0000:00:1b.0
  SysFS BusID: 0000:00:1b.0
  Hardware Class: sound
  Model: "Intel 82801JI (ICH10 Family) HD Audio Controller"
  Vendor: pci 0x8086 "Intel Corporation"
  Device: pci 0x3a3e "82801JI (ICH10 Family) HD Audio Controller"
  SubVendor: pci 0x1043 "ASUSTeK Computer Inc."
  SubDevice: pci 0x8311 
  Driver: "snd_hda_intel"
  Driver Modules: "snd_hda_intel"
  Memory Range: 0xfe8f8000-0xfe8fbfff (rw,non-prefetchable)
  IRQ: 45 (173056 events)
  Module Alias: "pci:v00008086d00003A3Esv00001043sd00008311bc04sc03i00"
  Driver Info #0:
    Driver Status: snd_hda_intel is active
    Driver Activation Cmd: "modprobe snd_hda_intel"
  Config Status: cfg=new, avail=yes, need=no, active=unknown

26: PCI 100.1: 0403 Audio device
  [Created at pci.319]
  Unique ID: NXNs.h2kiZ7VIR82
  Parent ID: vSkL.DMkYIFFK_KC
  SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:01:00.1
  SysFS BusID: 0000:01:00.1
  Hardware Class: sound
  Model: "PC Partner Sapphire HD 4850 512MB GDDR3 PCI-E Dual Slot Fansink"
  Vendor: pci 0x1002 "ATI Technologies Inc"
  Device: pci 0xaa30 "HD48x0 audio"
  SubVendor: pci 0x174b "PC Partner Limited"
  SubDevice: pci 0xaa30 "Sapphire HD 4850 512MB GDDR3 PCI-E Dual Slot Fansink"
  Driver: "snd_hda_intel"
  Driver Modules: "snd_hda_intel"
  Memory Range: 0xfe9fc000-0xfe9fffff (rw,non-prefetchable)
  IRQ: 46 (228921 events)
  Module Alias: "pci:v00001002d0000AA30sv0000174Bsd0000AA30bc04sc03i00"
  Driver Info #0:
    Driver Status: snd_hda_intel is active
    Driver Activation Cmd: "modprobe snd_hda_intel"
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #9 (PCI bridge)
Changement de mpd.conf

Code : Tout sélectionner

audio_output {
	type		"pulse"
	name		"MPD Pulse Output"
#	server		"localhost"
	sink		"alsa_output.pci-0000_00_1b.0.analog-stereo"
        device          "pulse"
        mixer_control   "Master"
}

mixer_type      "software"
Changement de asound.conf

Code : Tout sélectionner

##### cat /etc/asound.conf
pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}
pcm.!default {
#    type pulse
     type hw
     card 0
}
ctl.!default {
#    type pulse
     type hw
     card 0
}
pcm.dmixer {
 type dmix
 ipc_key 1024
 ipc_key_add_uid 0
 ipc_perm 0660
}
pcm.pulse_monitor {
  type pulse
  device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
}

ctl.pulse_monitor {
  type pulse
  device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
}

Re: [PulseAudio] seulement une application à la fois

Publié : lun. 13 févr. 2012, 07:40
par omeleet
Je double post, c'est moche mais bon.

Abort operation !

J'ai viré les asound.conf, remis les 2-3 paramètres par-ci par-là pour que le son soit repris en charge par alsa et b-a-s-t-a, j'ai toutes mes applis en même temps :mrgreen:

Pour le gros POC du casque au démarrage et à l'extinction, je m'étais rendu compte qu'il ne se faisait pas si je casque était muté.
Alors j'ai rajouté :
- Dans /etc/rc.local.shutdown : amixer set Master mute
- Dans /etc/rc.local : amixer set Master unmute
Et du coup ça fonctionne :)

En remettant sur alsa, j'ai de nouveau les notifs amsn.
Et concernant celles de thunderbird, j'avais vu qu'il fallait installer esound mais ça n'avait rien changé avec pulseaudio, or là avec alsa, le son du thunderbird fonctionne :)

Résumé : le son fonctionne comme je le souhaite, mais sans pulseaudio :lol:
Je vous remercie pour votre temps :chinois:

Edit : passage de l'état du sujet à (contourné) :contourne: