Décidément instable cette méthode. Ca ne fonctionne plus. Lorsque je mets en veille et rallume pulseaudio n’est pas au rendez vous:
kmc@kmcs:~$ pgrep pulseaudio
kmc@kmcs:~$
Maintenant, si je l’execute manuellement le script fonctionne:
kmc@kmcs:~$ /usr/local/sbin/sound_reload
Initiated PulseAudio successfully!
JACK Started Successfully
/usr/sbin/alsactl: set_control:1461: Cannot write control '2:0:0:Independent HP:0' : Device or resource busy
/usr/share/sounds/Kopete_Event.ogg:
File Size: 27.9k Bit Rate: 194k
Encoding: Vorbis
Channels: 2 @ 16-bit
Samplerate: 44100Hz
Replaygain: off
Duration: 00:00:01.15
In:100% 00:00:01.15 [00:00:00.00] Out:50.7k [ | ] Hd:5.9 Clip:0
Done.
amarok: aucun processus trouvé
QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave.
Object::connect: No such signal org::freedesktop::UPower::DeviceAdded(QString)
mimetype "application/vnd.ms-powerpoint.slide.macroEnabled.12"
amarok(6163)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
QWidget::insertAction: Attempt to insert null action
amarok(6163)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
**********************************************************************************************
** AMAROK WAS STARTED IN NORMAL MODE. IF YOU WANT TO SEE DEBUGGING INFORMATION, PLEASE USE: **
** amarok --debug **
**********************************************************************************************
Calling appendChild() on a null node does nothing.
Maintenant pulseaudio est là et j’ai du son avec amarok:
kmc@kmcs:~$ pgrep pulseaudio
6148
Voici les scripts:
kmc@kmcs:~$ cat /lib/systemd/system-sleep/kmc_reload_sound
#!/bin/bash
#
#Can be tested with: env -i /lib/systemd/system-sleep/kmc_reload_sound
logger kmc_systemd =$1 =$2
if [[ "$1" == "post" ]]
then
sleep 30
sudo -i -u kmc /usr/local/sbin/sound_reload
#sudo -i -u kmc pulse-jack-pre-start.sh
#sudo -i -u kmc pulse-jack-post-start.sh
fi
kmc@kmcs:~$ cat /usr/local/sbin/sound_reload
#!/bin/bash
#
pid=$(pgrep -xn pulseaudio)\
&& export DBUS_SESSION_BUS_ADDRESS="$(grep -ao -m1 -P '(?<=DBUS_SESSION_BUS_ADDRESS=).*?\0' /proc/"$pid"/environ)"
logger kmc_sr7 PID=$pid DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS
cadence-session-start -s
/usr/sbin/alsactl restore --file /home/kmc/.asound.state
logger kmc_end
/usr/bin/play /usr/share/sounds/Kopete_Event.ogg
#restart pulseaudio applications
killall amarok
amarok -p
kmc@kmcs:~$
et syslog pendant le wake up from suspend:
Jan 11 13:35:46 kmcs logger: kmc_systemd =post =suspend
...
Jan 11 13:09:45 kmcs logger: kmc_sr7 PID=1007 DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-zQRrk23F9D,guid=d65c8e399a3bb7a643a6a3fb5a5537f9
Jan 11 13:09:46 kmcs org.jackaudio.service[1459]: no message buffer overruns
Jan 11 13:09:47 kmcs pulseaudio[3724]: Stale PID file, overwriting.
Jan 11 13:09:47 kmcs pulseaudio[3724]: JACK error >Cannot lock down 82274202 byte memory area (Ne peut allouer de la mémoire)<
Jan 11 13:09:47 kmcs pulseaudio[3724]: Default and alternate sample rates are the same.
Jan 11 13:09:47 kmcs pulseaudio[3724]: JACK error >Cannot use real-time scheduling (RR/5)(1: Opération non permise)<
Jan 11 13:09:47 kmcs pulseaudio[3724]: JACK error >JackClient::AcquireSelfRealTime error<
Jan 11 13:09:47 kmcs pulseaudio[3724]: Default and alternate sample rates are the same.
Jan 11 13:09:47 kmcs pulseaudio[3724]: JACK error >Cannot use real-time scheduling (RR/5)(1: Opération non permise)<
Jan 11 13:09:47 kmcs pulseaudio[3724]: JACK error >JackClient::AcquireSelfRealTime error<
Jan 11 13:09:47 kmcs systemd-sleep[2310]: Initiated PulseAudio successfully!
Jan 11 13:09:47 kmcs systemd-sleep[2310]: JACK Started Successfully
Jan 11 13:09:47 kmcs systemd-sleep[2310]: /usr/sbin/alsactl: set_control:1461: Cannot write control '2:0:0:Independent HP:0' : Device or resource busy
Jan 11 13:09:47 kmcs logger: kmc_end
le message au sujet de la mémoire est suprenant. A noter que j’ai mis un sleep 30 dans le kmc_reload_sound au cas où, pour laisser passer tous les process d’initialisation system, mais ça n’a rien changé.