- Не работает микрофон в Linux (РЕШЕНО)
- Как проверить микрофон в Linux
- 1. Установите pulseaudio
- 2. Убедитесь, что громкость микрофона не на нуле
- 3. Выбор правильного профиля для Встроенного аудио
- 4. Конфликт встроенного микрофона и HDMI источника
- 5. Микрофон гарнитуры показан как подключён, хотя это не так. Микрофон не работает, пока не подключена и не отключена гарнитура
- Связанные статьи:
- Рекомендуемые статьи:
- 7 Комментарии
- Why is the microphone not working in Ubuntu? 5 Fixes
- Check your mic
- Update Ubuntu
- Check mic levels
- Change the input channel
- Install the missing codecs
- Yadullah Abidi
Не работает микрофон в Linux (РЕШЕНО)
В этой заметке будут рассмотрены несколько причин, почему не работает микрофон в Linux. Имеются ввиду случаи, когда микрофон не работает сразу во всех приложениях, а не в каком-то определённом.
Как проверить микрофон в Linux
Чтобы проверить микрофон прямо в командной строке без программ с большим количеством опций, запустите команду:
arecord -f cd -d 10 test-mic.wav
Будет выполнена запись звука в течение 10 секунд. Чтобы воспроизвести полученный файл, выполните следующую команду:
1. Установите pulseaudio
Начните с установки пакета pulseaudio.
PulseAudio — это звуковой сервер общего назначения, предназначенный для работы в качестве промежуточного программного обеспечения между вашими приложениями и аппаратными устройствами с использованием ALSA или OSS. Он также предлагает простую потоковую передачу по сети через локальные устройства, используя Avahi, если он включён. Хотя его основная цель — облегчить настройку звука, его модульная конструкция позволяет более опытным пользователям точно настраивать демон в соответствии с его потребностями.
В Debain, Linux Mint, Kali Linux, Ubuntu и их производных это делается так:
sudo apt install pulseaudio
В Arch Linux, BlackArch и их производных это делается следующим образом:
2. Убедитесь, что громкость микрофона не на нуле
Зайдите в настройки звука, переключитесь во вкладку Input и проверьте настройки громкости.
Если там несколько устройств, то проверьте каждое из них.
Если вы не можете найти настройки громкости, запустите команду и перейдите во вкладку «Устройства Ввода»:
Убедитесь, что звук не заглушён
3. Выбор правильного профиля для Встроенного аудио
Откройте регулятор громкости PulseAudio — в меню или командой:
Перейдите во вкладку «Конфигурация» и в качестве «Профиля» выберите «Аналоговый стерео дуплекс»:
Даже если этот профиль уже выбран, попробуйте выбрать другой и вновь переключиться на «Аналоговый стерео дуплекс» — проверьте, решило ли это вашу проблему.
Кстати, если вы пытаетесь заставить работать не встроенный микрофон, а, например, источник звука HDMI, то здесь вы можете найти другие профили, которые переключат на нужный вам микрофон.
4. Конфликт встроенного микрофона и HDMI источника
На компьютере для ввода звука могут быть следующие источники:
- встроенный в ноутбук микрофон
- гарнитура, подключённая через audio jack
- Bluetooth гарнитура
- HDMI вход
- микрофон видеокамеры
- USB микрофон или гарнитура
Некоторые пользователи Linux сталкиваются с тем, что система по умолчанию пытается использовать HDMI источник звука, даже если соответствующий провод не подключён.
Откройте терминал (например, нажав Ctrl+Alt+t) и проверьте, какие у вас используются звуковые кодаки:
cat /proc/asound/card*/codec* | grep Codec
Codec: Realtek ALC295 Codec: Intel Kabylake HDMI
Если у вас более чем одна строка (как в выводе выше), то это может быть причиной проблемы, когда звук не записывается или записываются только статические помехи.
Подтвердить можно следующим образом:
- подключите гарнитуру к входу audio jack (например, возьмите наушники с микрофоном от телефона)
- сразу отключите гарнитуру от audio jack
- проверьте работоспособность микрофона — если раньше он не работал, а теперь стал записывать звук, значит данный раздел может решить вашу проблему.
Сделайте резервную копию файла, если он уже существует:
sudo cp /etc/modprobe.d/alsa-base.conf /etc/modprobe.d/alsa-base.conf.bak
Для исправления достаточно добавить строку в файл /etc/modprobe.d/alsa-base.conf:
sudo gedit /etc/modprobe.d/alsa-base.conf
options snd-hda-intel model=МОДЕЛЬ
Вместо слово МОДЕЛЬ нужно вписать значение, которое вы найдёте для модели вашего ноутбука на странице HD-Audio Codec-Specific Models.
Причём там не обязательно будет точное название модели — просто найдите то, что ближе всего к ней. Например, модель моего ноутбука ASUS GL703GE, самое похожее, что я смог найти, это «asus-g73jw», тогда строка, которую я добавил в файл /etc/modprobe.d/alsa-base.conf, следующая:
options snd-hda-intel model=asus-g73jw
Сохраните этот файл и перезагрузитесь — после этого проблема должна исчезнуть.
5. Микрофон гарнитуры показан как подключён, хотя это не так. Микрофон не работает, пока не подключена и не отключена гарнитура
Описание данной проблемы пользователями:
Все работает нормально, за исключением странной проблемы с моим микрофоном, он работает, только если я загружаюсь с наушниками с уже подключённым микрофоном или если я подключаю их после загрузки. В противном случае всё, что я получаю при записи звука, это статичные помехи.
Я никогда раньше не использовал свой внутренний микрофон, но в конце концов я использовал его некоторое время назад для видеоконференций. Микрофон начинает работать после того, как я просто подключаю 3,5-миллиметровую головную гарнитуру, которую я затем отключаю. Тогда я могу использовать свой внутренний микрофон, автоматическое отключение звука также работает, подключив и отключив гарнитуру. После перезагрузки микрофон вновь не работает (микрофон гарнитуры отмечен, как опять подключённый) и всё нужно делать заново.
Рассмотрим, как это можно исправить.
Установите продвинутые инструменты Alsa. В Debain, Linux Mint, Kali Linux, Ubuntu и их производных это делается так:
sudo apt install alsa-tools-gui
В Arch Linux, BlackArch и их производных это делается следующим образом:
Для запуска выполните команду:
В «Select a codec» выберите основное устройство для захвата звука, поставьте галочку «Show unconnect pins»:
Поставьте галочку для Pin ID 0x19 и выберите «not connected». Сохраните настройки и проверьте, всё ли работает как следует, убедитесь, что звук микрофона не заглушён в pavucontrol или настройках звука.
Если всё нормально, то нажмите кнопку «Install boot override» — установить переопределение при загрузке, чтобы изменения вступали в силу при включении компьютера.
Связанные статьи:
Рекомендуемые статьи:
7 Комментарии
Добрый день! На ноутбуке Ubuntu. Есть проблема с микрофоном. Иногда подключал USB микрофон для программирования. Не проверял работает ли он, но было видно что шумы какие то есть, оказалось, что звуки с микрофона не фиксируются. Сейчас в списке устройств нет устройств ввода
У меня все заработало,включая запись с микрофона,когда в настройках звука выставил:
Источник: Встроенное аудио Аналоговое стерео.
Сервер: Pulse Audio.
кодек: vorbis , контейнер: MP4.
И методом проб подобрал расстояние до микрофона (20-25 см),
и в динамиках небольшой звук.(у меня выносные).
Пробовал три программы:kazam,simple screen recordrer и vocoscreen.
Выбрал последнюю.
Мне помогло другое: 1) Подключил USB-микрофон; 2) в терминал ввел команду: pacmd load-module module-loopback latency_msec=5 3) В терминале вводим команду: pavucontrol 4) Ставим и убираем галочки как на рисунке. Что-то из этого мне помогло.
Если присмотреться, то в статье тоже выбрана совсем неблизкая модель: ASUS G73Jw — это модель из 2011 года, а ASUS GL703GE это модель 2018 года. Но каким-то немыслимым чудом мне помог именно этот способ. В первую очередь смотрите на название аудио кодека. К примеру, в моём случае:
cat /proc/asound/card*/codec* | grep Codec Codec: Realtek ALC295 Codec: Intel Kabylake HDMI
То есть это ALC295. Тогда достаточно выбрать какую-нибудь модель из группы «ALC22x/23x/25x/269/27x/28x/ 29x (and vendor-specific ALC3xxx models)». В официальной документации по ядру Linux так и сказано — переберите несколько вариантов и, возможно, вам повезёт. Главное не модель, а установленный чип HD-audio (чип контроллера и чипы кодеков). Чтобы при каждой смене опции не перезагружать компьютер, удаляйте и запускайте модуль следующими командами:
sudo modprobe -r snd-hda-intel sudo modprobe snd-hda-intel
Что касается «другого сайта», то посмотрите на адрес сайта на который в статье дана ссылка — kernel.org — что-то полнее вы уже не найдёте.
Метод 4 работает. для ноутбука Toshiba Satellite (2008 год = ALC268) с MX Linux строка в alsa-base.conf: options snd-hda-intel model= spdif
дело не в моделе ноутбука, а в неких generic опциях. для ноута toshiba satellite l300 c Realtek ALC268 строка вообще к модели не привязана. options snd-hda-intel model=spdif
Why is the microphone not working in Ubuntu? 5 Fixes
Ubuntu is one of the easiest Linux distros to pick up and use, complete with an App Store and a relatively easy to navigate user interface. However, that still doesn’t put it at par with more popular operating systems like Windows or macOS when it comes to hardware support.
In this article, we’re looking at why your microphone might not be working in Ubuntu and five ways you can fix the problem.
Check your mic
Before we start diagnosing potential software issues with Ubuntu, check your mic to ensure nothing’s broken. Try using the mic with another device like your phone or a Windows or macOS PC to see if the mic itself is working correctly.
Update Ubuntu
Updating Ubuntu can also update any malfunctioning drivers that might be causing problems. Just open the terminal and enter the following command.
sudo apt-get update && sudo apt-get upgrade
Check mic levels
Another potential problem could be that your mic is getting detected, but the input levels are too low for the mic to pick any sound. Follow these steps to increase the mic volume.
Step 1: Head over to Ubuntu settings and click the Sound tab.
Step 2: Scroll down to Input and check if the right device is selected as the mic. Also, check if the volume is high enough.
Change the input channel
If your mic is connected to the wrong channel, it might not show up in the OS. Here’s how to fix the problem.
Step 1: Open the terminal and type the following command.
sudo gedit /etc/modprobe.d/alsa-base.conf
Step 2: In the file that opens, search for
options snd-usb-audio index=-2
options snd-usb-audio index=0
Step 3: Finally, add this line to the end of the document.
options snd-hda-intel model=auto
Now restart your PC and try again.
Install the missing codecs
If the required codecs for your mic aren’t installed, you can run into problems with the mic. Here’s how to install them.
Step 1: Open the terminal and enter the following command to get a list of audio codecs on your machine.
cat /proc/asound/card*/codec* | grep Codec
Step 2: Head over to this page and look up the codec name corresponding to the version you saw in the above command.
Step 3: Once you know the codec name, open the alsa-base.conf file (usually located in /etc/modprobe.d/) and replace the codec’s name in the following line.
options snd-hda-intel model=[codec name here]
Now restart your PC, and the mic should start working.
Yadullah Abidi
Yadullah is a Computer Science graduate who writes/edits/shoots/codes all things cybersecurity, gaming, and tech hardware. When he’s not, he streams himself racing virtual cars. He’s been writing and reporting on tech and cybersecurity with websites like Candid.Technology and MakeUseOf since 2018. You can contact him here: [email protected]