Looking at the differences between svolume_sse.c from pulseaudio 0.9.16 and the current one I noticed that those changes are only cosmetical - only a comment has changed. It does not make sense to try to patch that... But you can of course try the patch I posted in #19 and see if that works for you.
It is quite simple really. Assuming you...
- keep your sources in /usr/src
- downloaded the patch to your home directory
- have not built pulseaudio before so there are no pulseaudio*.deb or libpulse*.deb packages in /usr/src
...it goes something like this:
(first get the build dependencies:)
sudo apt-get build-dep pulseaudio
(now get the source:)
cd /usr/src
apt-get source pulseaudio
(patch the source:)
(cd whatever directory the source was installed to, currently pulseaudio-0.9.18 so...)
cd pulseaudio-0.9.18
patch -p1 < ~/revert_svolume_mmx_to_known_good_version.patch
(build the binary packages:)
fakeroot dpkg-buildpackage -b
(install pulseaudio and libpulse:)
(while still in the pulseaudio source directory, directly after the build has finished:)
As to how to test the new build depends on how you use it. If you run a sound-generating package like mplayer or totem it should be sufficient to kill any running pulseaudio daemon with:
pulseaudio -k
It should autostart the next time you start any sound-generating program... unless you have autospawn=no in your personal pulseaudio config of course... in that case you need to start it manually.
If you run some sound-generating daemon like mpd you may need to restart that to make sure it starts a fresh copy of pulseaudio.
Looking at the differences between svolume_sse.c from pulseaudio 0.9.16 and the current one I noticed that those changes are only cosmetical - only a comment has changed. It does not make sense to try to patch that... But you can of course try the patch I posted in #19 and see if that works for you.
It is quite simple really. Assuming you...
- keep your sources in /usr/src
- downloaded the patch to your home directory
- have not built pulseaudio before so there are no pulseaudio*.deb or libpulse*.deb packages in /usr/src
...it goes something like this:
(first get the build dependencies:)
sudo apt-get build-dep pulseaudio
(now get the source:)
cd /usr/src
apt-get source pulseaudio
(patch the source:)
(cd whatever directory the source was installed to, currently pulseaudio-0.9.18 so...)
cd pulseaudio-0.9.18 svolume_ mmx_to_ known_good_ version. patch
patch -p1 < ~/revert_
(build the binary packages:)
fakeroot dpkg-buildpackage -b
(install pulseaudio and libpulse:)
(while still in the pulseaudio source directory, directly after the build has finished:)
sudo dpkg -i ../libpulse0_*.deb ../pulseaudio_*.deb
As to how to test the new build depends on how you use it. If you run a sound-generating package like mplayer or totem it should be sufficient to kill any running pulseaudio daemon with:
pulseaudio -k
It should autostart the next time you start any sound-generating program... unless you have autospawn=no in your personal pulseaudio config of course... in that case you need to start it manually.
If you run some sound-generating daemon like mpd you may need to restart that to make sure it starts a fresh copy of pulseaudio.
Now try to change volume...