[ltp] speaker/volume problem

Richard Neill linux-thinkpad@linux-thinkpad.org
Fri, 01 Jun 2007 03:54:33 +0100


Paul Kaplan wrote:
> I am currently running Kubuntu Feisty on a Thinkpad T43, having recently
> moved up from Edgy.  My external speakers, which are attached through
> the headphone jack, have their own volume control.
> 
> On Edgy (and Dapper), I could use the Thinkpad mute button to turn off
> the internal speakers and use only the external speakers.  The external
> speaker volume was controlled independently by both kmix and the hardware
> volume control.  If the internal speakers were un-muted (through the
> Thinkpad button), their volume was controlled by Thinkpad volume buttons and
> kmix.  So kmix controlled the system volume at the software level, and
> each set of speakers had its own independent hardware volume control.
> 
> With Feisty, the Thinkpad buttons control kmix directly, not the Thinkpad
> speakers.  As a result, I can't turn off the Thinkpad speakers (and
> their marginal sound quality) and still use the external speakers.  If I
> use the Thinkpad mute button, it mutes the entire sound system.  As a
> result, in order to get sound out of the external speakers, I need some
> volume on the internal speakers.
> 
> I don't want to permanently inactivate the internal speakers since I do
> use them when I'm not connected to the dock.
> 
> How can I restore the old situation where the Thinkpad sound buttons are
> controlling only the internal speakers, not kmix?
> 

That sounds very odd - usually, the *headphone* output is connected in 
hardware such that inserting the jack kills off the speakers. However, 
with 5.1 sound, the line-in jack can be switched into functioning as a 
line-out jack instead; this is in "parallel" with the headphone out 
jack. Could you be doing that?

Suggestions:

1)look at gnome-alsamixer. This is the easiest to understand, if you 
have weird 5.1 channel routing things happening.

2)Roll your own: use tpb (thinkpad buttons) and its callback option to 
invoke a shell script; then use amixer as a CLI interface to alsamixer.

3)Consider a cheap USB soundcard: something like the Behringer UCA202 is 
only $20, and it works a treat. 2 big advantages:
   i)It's external, so there is no audible interference from the CPU 
into your music.
  ii)When you get a console-beep, it goes to the internal speakers. So 
you don't get suddenly deafened by *BEEEEP* through a hi-fi!


HTH,

Richard