During the last weeks, as for most of us, the communication happens over applications on the PC. For this matter, I use my headphones which cover the ears, have a decent sound quality and a microphone builtin to the cable. It is a pure analog device with a 4 pin jack connector which has the big advantage to also work on my cell phone.

While being in a somewhat boring and lengthy status meeting where I did not have to say anything but still needed to listen for some trigger words and discussions to jump in if needed, I was looking at some KMyMoney code reviews on the side and ran the build process in the background.

To get the most out of my machine, I have the following lines in my .bashrc which make sure to use the all the available processors plus an extra one to also cover wait cycles for external hardware etc.

alias make='make -j$CPUCOUNT'

Doing so on my 6 core hyperthreaded Dell Laptop runs 13 threads of the compiler which eventually causes the fan to start spinning.

In the meeting people started complaining about a loud noise. It took me a while to figure out that they complained about me resp. my fan making the noise as the headphones shielded this noise pretty well. I simply muted my mic to get a quick solution. At the same time, I wondered why the microphone placed in the cable of the headphones is so good to pick up the fan’s noise.

A bit of research turned out that it was the builtin microphone of the laptop which was used all the time and not the one located in the cable. Checking what is going on, I found out that the audio output switches from speaker mode to headphone mode when you plugin the headphone jack but that it does not switch the mic at the same time. You can do that manually, but it switches back to builtin equipment as soon as you pull the headphone plug. That’s not elegant and I thought that there must be a solution to automate the process.

Searching for the term “howto automatically switch mic from builtin to headphone on linux” I got sound – How do I make Ubuntu select my headset mic as default … as the first hit. Well, I am using openSUSE Leap 15.1 but gave it a shot anyway. And guess what: it was exactly the solution I needed mainly because the person who answered the original question had a very similar, if not even the same hardware.

Now, I can join the meetings and run the compiler without getting complaints.

Audio Fun