Even if my machines are all on a 64 bit architecture, I am using the 32 bit Skype version, as suggested. Recently, my laptops and workstation accidentally initiated the installation of the update 7 of Linux Mint Debian Edition. As a result, Skype audio was broken (again, sigh…). It took me an amount of research and trial-and-error to find the right combination of fixes that made things work (eh yes, one fix only was not enough 🙂
For starters, the package libasound2-plugins:i386 must be installed. And, as reported in several places (including Mint forums) you’ll need to fix PulseAudio’s configuration as follows:
in the file /etc/pulse/default.pa
the line
load-module module-udev-detect
must be changed in
load-module module-udev-detect tsched=0
You’ll then need to restart pulseaudio. Try to kill it with:
pulseaudio -k
and verify that it’s actually down with:
pgrep -lf pulseaudio
(or pgrep -u your_username -lf pulseaudio
in case you’re not the only active user of the system).
If it’s not gone, try to kill it again until it goes away. Then run
pulseaudio --start
and test: Skype should be working fine now.
Is it possible to teach CFEngine to apply this fix? Of course it is! This bundle does the job:
bundle agent fix_skype_audio { files: "/etc/pulse/default.pa" classes => if_repaired("pulseaudio_skype_fix_applied"), edit_line => replace_line("\s*load-module module-udev-detect\s*", "load-module module-udev-detect tsched=0") ; packages: "libasound2-plugins:i386" package_policy => "add", package_method => apt ; reports: pulseaudio_skype_fix_applied:: "Pulseaudio fix applied, please restart pulseaudio!" ; } # Replace the content of a line matching the regex (anchored) bundle edit_line replace_line(regex,content) { replace_patterns: "^($(regex))$" replace_with => value("$(content)"), comment => "Search and replace string"; }
You’ll need to have the CFEngine standard libraries included in the inputs to make this work. Note that I preferred to just get a warning instead of letting CFEngine restart my pulseaudio. I prefer to choose myself the right moment to do that, so a warning is enough.
Enjoy!
Hello, I read your instructions, but I don’t seem to be able to find the pulse/default.pa file.
Where is it located? Not in .pulse nor in .skype (I am also using LMDE updatepack 7)
It’s /etc/pulse/default.pa, it’s not in your home directory. And it’s installed by the package pulseaudio:
$ dpkg -S /etc/pulse/default.pa
pulseaudio: /etc/pulse/default.pa
I would be surprised if you didn’t have pulseaudio installed, but if you don’t… why?
Ciao!
— M