When I'm speaking with my internal microphone and I connect my headset, it's not detecting the microphone on it. Thing that does not happen in Windows, also didn't happen in Ubuntu 18.04
Any suggestion to fix it?
So, trying various stuff I am not sure which step was effective. Ubuntu 20.0.4 using Cinnamon (no Gnome/KDE) on Dell XPS 9340:
rm -rf ~/.config/pulse/
Headphones start working...
sudo mv pulse pulse_old
. Then you restart your machine. If everything works fine, you can delete that pulse_old
directory.
Nov 20, 2020 at 11:46
pulseaudio -k && sudo alsa force-reload
would also do instead of log in & log out.
So after having this issue with beautiful, but already annoying, 20.04, I found a solution in another post at SuperUser. In my case what helped me was:
Use the following command to get the Audio Codec for your machine's model:
cat /proc/asound/card*/codec* | grep Codec
In my case I saw the following audio and video codecs:
Codec: Realtek ALC233
Codec: Nvidia GPU 94 HDMI/DP
Go to www.kernel.org, look up the version of the codec, and get the full name of it. In my case, for Realtek ALC233
it's alc233-eapd
.
Create/update the /etc/modprobe.d/alsa-base.conf
file, and add this line, replacing the model with your own:
options snd-hda-intel model=alc233-eapd
Reboot the machine.
alc298-dell1
, or alc298-dell-aio
. Just do a global search on that page for 'Realtek ALC298', and you'll see.
What fixed this for me was running pulseaudio -k
in Terminal.
I am using Ubuntu 20.04 on my Sony Vaio VPCEH28FN with intel-hda-sound card.
Output of cat /proc/asound/card*/codec* | grep Codec
is
Codec: Conexant CX20590
Codec: Nvidia GPU 1c HDMI/DP .
What worked for me was --
sudo apt install alsa-tools-gui
on my terminal.hdajackretask
on my terminal.My laptop is ACER E5-573G-74Q5. My codec is Realtek ALC255.
I did Yurii S’s solution, but it didn’t work. Then Soundar gave me the idea of putting more than one codec in /etc/modprobe.d/alsa-base.conf
, where I added the following line:
options snd-hda-intel model=alc255-acer,dell-headset-multi
Putting just one or the other didn't work, but putting both worked. Strange, but putting Dell codec on my Acer worked.
I have Dell Inspiron E7250 with PopOS 20.04 installed. I had same problem and it got resolved after adding following lines to /etc/modprobe.d/alsa-base.conf
and rebooting.
options snd-hda-intel position fix=1
options snd-hda-intel index=0 model=dell-headset-multi,dell-e7x
Following is codec available in laptop
# cat /proc/asound/card*/codec* | grep Codec
Codec: Intel Broadwell HDMI
Codec: Realtek ALC3235
alsa-base.conf
? I'd like to try your solution.... I have this cat /proc/asound/card*/codec* | grep Codec Codec: Realtek ALC295 Codec: Intel Icelake HDMI
-
Install the alsa-tools-gui
package:
sudo apt install alsa-tools-gui
Then run:
hdajackretask
Select the appropriate sound card up top in Select a codec, then make the Black Mic (headphone jack) override, and set to Not connected
In the lower right corner, select Install boot override.
Reboot and pray.
(Worked for me.)
This answer is to a question provided via a separate user's bounty of this question. As the question will disappear along with the bounty, I will include it, word for word, below, in hopes that it can be somewhat useful to users in the future.
On my computer, the microphone sound is correctly detected in pavucontrol, but it's marked as unplugged and not present in audio parameters. I tried this: wiki.archlinux.org/title/PulseAudio/… but Alsamixer interface is obscure. Provided answers do not fix my issue. Any hing how to progress on this? What's the respective roles of pulseaudio, pavucontrol, alsamixer?
-Eric Burel
As for the answer,
I do not believe that alsa is your problem. Alsa is a driver database (among other things) whose job it is to connect your hardware with the proper "sound card" which actually refers to, again, a driver that provides access to that hardware (the physical sound card for which the alsa "sound card" is an abstraction.) It is more or less responsible for getting your hardware properly mapped into udev. As I said, there are other features, i.e the ins / outs, etc., but these mostly facilitate the main duties listed above.
You can check pactl list cards
to be sure, but I guarantee that your device is linked to a driver. Otherwise Pulseaudio would not be detecting it. This doesn't mean that it is the correct driver. You can google
<MAKE> <MODEL> Alsa driver
getting the first two from your specs, and the first few results should contain something (at least close to) official from launchpad, linux-hardware.com, etc. From there, check the link for a driver. It may be called an "audio card", "Device Driver", or similar. Once you find the recommended, check that against the results of lsmod | grep Audio
. If this command gives the name of your headphones in its output then don't worry about Google. You're good.
Alternatively, when you run the command that I included in my comment, or the one from above look through the names of all the device.\*
entries. Once again, if you see your device model name, you're good.
Now for pulseaudio
. Since you have nowhere to post command line output, I will recommend 2 pulseaudio
gui packages that will get you up and running.
The first is paprefs
. This is short for Pulseaudio Preferences. This app will let you configure pa streams.
Think of a stream as a pipe, but for sound. Your mic will ideally stream audio from Alsa
(Source) into the stream (Source-Input) and at the other end of the stream (Sink-Input) it will feed into its output / destination (Sink, e.g. Audacity
or another audio / streaming app.)
The Four main words in parentheses above are the keywords that make up the entire pulseaudio
abstraction. If you know what these are, you can configure pulseaudio
from pretty much any CLI or GUI.
paprefs
lets you configure streams with actions such as moving them from one sink to another, etc. In your case , (although it is hard to tell without any console output) it sounds like you may have a stream without a sink.
The other app is padevchooser
. This app doesn't really help in the current situation, but it does give extra capabilities to pulseaudio
. It mostly focuses on sharing streams over the internal network.
If you would rather work with the command line, you can use pacmd
or pactl
. Both of these use the same objects that I described above. pactl
is supposed to be a front-end for pacmd
, but in my experience, they are pretty much the same save for slightly different syntax and the fact that pacmd
can do a few things that pactl
cannot.
If you can provide a venue to post the output to pactl list cards
, pactl list sources
, and pactl list sink-inputs
, I can walk you through the process. However, without a way to tell what the issue is, I can only give you the tools.
man pactl
and man pacmd
will have all of the commands you need. These commands are well named, so you will know what each does immediately. Not much reading involved.
pactl list sources
has a source for your mic, then your issue is not alsa.
pactl list *
where * represents the four terms above. run in this order: sources source-outputs sink-inputs sinks
. This is the flow of the signal. Find out where it stops, where the device is first missing from output. That is why I wanted to see the output. let me know the result.
sources
, in sinks
, but source-outputs
and sink-inputs
are empty. We might follow up on this link: gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/941 this is the issue I've opened directly in Pulse Audio ticket tracker, because there is certainly a bug somewhere (though I cannot tell yet if Pulse Audio is directly responsible or can provide a fix even if the bug is somewhere else). Right now, I've bought a 10€ jack to USB C converter from a famous fruit-named brand to bypass the issue, works perfect.
Sep 21, 2021 at 7:08
When I came to this question (and similar other ones), the fix was rather simple:
Done.
pactl list sources
give?