I have Ubuntu 13.10 installed on my MacBook Pro 4,1 and it is working great. The only problem is that my broken speakers let out static all the time. I somehow broke the speakers while I was repasting the heatsinks a while back, and it isn't a big deal in OS X or Windows 7 because I can easily turn off the internal speakers by muting or plugging in headphones. The same doesn't work in Ubuntu, and the constant static had me so annoyed that I have added the snd_hda_intel and snd_hda_codec_realtek kernel modules to the blacklist to completely disable sound. Does anyone have a solution that will let me still use my headphones for music, just not the internal speakers?
Try using
alsamixer
in terminal and see if you can mute it by pressingm
.Another possible solution:
A more involved possible work around. Type
lspci
in your terminalLook for the audio controller responsible for sound. Find the PCI location of the device.
I was unable to edit these pci device without using
su
echo -n "0000:00:1b.0" > /sys/bus/pci/drivers/"YOUR SOUND CONTROLLER"/unbind
"YOUR SOUND CONTROLLER" in my case was "snd_hda_intel" and "0000:00:1b.0" was my pci location. To rebind,
echo -n "0000:00:1b.0" > /sys/bus/pci/drivers/"YOUR SOUND CONTROLLER"/bind
Does it work? If so, then make a script that you can run that will enable/disable that pci location.
Another solution:
The idea is to keep the headphone jack permanently on, or to disable the internal speakers via pulseaudio. The documentation is not very easy to read but the location of these files are in
/usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
or
/usr/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf