Dezactivarea microfonului intern al laptopului

Dezactivarea microfonului intern al laptopului

Dacă lucrezi cu căști cu microfon, cu un microfon USB sau cu căști Bluetooth, microfonul intern al laptopului devine de cele mai multe ori o sursă de probleme: preia sunetul din difuzoare, produce ecou în apeluri, adaugă zgomot de la tastatură și ventilator, iar unele programe îl aleg din proprie inițiativă, chiar dacă tu ai conectat alt microfon. În acest tutorial găsești toate variantele prin care poți opri microfonul intern, de la un simplu mute din interfața grafică până la dezactivarea lui permanentă, indiferent de distribuție, de mediul desktop (DE) sau de window manager (WM) pe care îl folosești.

Variantele sunt ordonate de la cea mai simplă la cea mai radicală, așa că poți să te oprești la prima care îți rezolvă problema.

Înainte de a începe

Ce server audio folosești

Aproape toate distribuțiile moderne folosesc PipeWire (cu WirePlumber ca session manager), dar pe sisteme mai vechi sau configurate manual poți întâlni încă PulseAudio. Comenzile diferă puțin între cele două, așa că merită să verifici înainte:

pactl info | grep "Server Name"

Dacă rezultatul conține PulseAudio (on PipeWire …), folosești PipeWire și toate comenzile wpctl din tutorial funcționează. Dacă apare doar pulseaudio, folosești PulseAudio clasic și te interesează variantele cu pactl. Pe un sistem cu PipeWire, comenzile pactl funcționează și ele, prin stratul de compatibilitate pipewire-pulse.

Dacă folosești PipeWire, verifică și versiunea WirePlumber, pentru că formatul fișierelor de configurare s-a schimbat la versiunea 0.5:

wireplumber --version

Cum identifici microfonul intern

Listează sursele audio (dispozitivele de intrare):

# PipeWire
wpctl status
 
# PipeWire sau PulseAudio
pactl list short sources

În lista afișată de pactl vei recunoaște dispozitivele după nume:

  • alsa_input.pci-…analog-stereo este, aproape întotdeauna, microfonul intern al laptopului (placa de sunet integrată);
  • alsa_input.usb-… este un microfon sau o cască USB;
  • bluez_input… sau bluez_source… este o cască Bluetooth în modul headset;
  • intrările care se termină în .monitor nu sunt microfoane, ci „oglinzi“ ale ieșirilor audio, așa că le poți ignora.

Notează numele complet al microfonului intern, pentru că îl vei folosi mai jos. În exemplele din tutorial am folosit alsa_input.pci-0000_00_1f.3.analog-stereo, care este numele tipic pe laptopurile cu Intel, dar la tine poate fi diferit.

Instalarea uneltelor

Majoritatea metodelor de mai jos folosesc pavucontrol (un mixer grafic care funcționează în orice DE sau WM), alsa-utils (pentru alsamixer și amixer) și pactl. Pe multe distribuții sunt deja instalate, dar dacă îți lipsesc:

sudo apt install pavucontrol alsa-utils pulseaudio-utils

sudo dnf install pavucontrol alsa-utils pulseaudio-utils

sudo pacman -S pavucontrol alsa-utils libpulse

sudo zypper install pavucontrol alsa-utils pulseaudio-utils

Dacă preferi un program scris direct pentru PipeWire, există și pwvucontrol, disponibil în depozitele Arch și Fedora sau ca Flatpak de pe Flathub, care arată și funcționează aproape la fel ca pavucontrol. Pe KDE Plasma și LXQt poți folosi și pavucontrol-qt, care se integrează mai bine vizual.

Metoda 1: din setările mediului desktop

Fiecare mediu desktop are propriul panou de setări pentru sunet. Aici poți pune microfonul intern pe mute sau poți alege alt microfon ca implicit, ceea ce în majoritatea cazurilor este suficient.

Deschide Setări → Sunet. În secțiunea Intrare alege din lista de dispozitive microfonul căștilor sau microfonul USB, iar dacă vrei să oprești de tot microfonul intern, selectează-l temporar și apasă pe iconița de microfon din stânga glisorului de volum pentru mute, sau trage glisorul complet la stânga.

Atunci când un program folosește microfonul, în meniul Setări rapide din colțul din dreapta-sus apare și un glisor pentru volumul de intrare, de unde îl poți controla rapid.

Pentru schimbarea profilului plăcii de sunet (dezactivare permanentă) folosește pavucontrol, descris la Metoda 2.

Deschide Setări sistem → Sunet. În secțiunea Dispozitive de înregistrare (Input Devices) apasă butonul de mute de lângă microfonul intern, iar la microfonul căștilor apasă pe Implicit ca să devină dispozitivul folosit de toate programele.

Tot în această pagină, în dreptul plăcii de sunet interne, ai o listă Profil, de unde poți alege Analog Stereo Output (fără „+ Input“), ceea ce scoate complet microfonul intern din sistem.

Din panou, applet-ul de volum din system tray are un tab Dispozitive cu butoane de mute pentru fiecare microfon. Plasma are și o scurtătură globală Mute Microphone, pe care o poți configura în Setări sistem → Scurtături → Audio Volume.

Xfce nu are un panou de sunet propriu, ci folosește plugin-ul PulseAudio Plugin din panou (pachetul xfce4-pulseaudio-plugin). Dă click pe iconița de volum și vei vedea un glisor pentru microfon, cu buton de mute.

Pentru opțiuni mai avansate, din același meniu alege Audio Mixer, care deschide pavucontrol.

Click dreapta pe iconița de volum din panou → Preferințe sunet (sau Centru de control → Sunet). În tab-ul Intrare selectează microfonul intern și bifează Mut, sau alege alt microfon din listă ca să devină implicit.

Pentru dezactivare permanentă mergi în tab-ul Hardware, selectează placa de sunet internă și la Profil alege Analog Stereo Output. Când vrei microfonul înapoi, alegi Analog Stereo Duplex.

Deschide Setări sistem → Sunet, tab-ul Intrare. Selectează din listă microfonul pe care vrei să îl folosești, iar pentru microfonul intern folosește butonul de mute sau trage volumul la zero.

Applet-ul de sunet din panou afișează și el un control pentru microfon atunci când acesta este folosit de un program. Pentru schimbarea profilului plăcii de sunet folosește pavucontrol.

LXQt folosește applet-ul Volume Control din panou. Click pe el și apoi pe Mixer, care deschide pavucontrol-qt (sau pavucontrol), unde ai toate opțiunile descrise la Metoda 2.

Deschide Budgie Control Center → Sunet. Interfața este preluată din GNOME, așa că pașii sunt aceiași: alegi microfonul dorit în secțiunea Intrare și folosești iconița de microfon pentru mute.

În window managere precum i3, Sway, Hyprland, bspwm, Openbox sau dwm nu există un panou de setări pentru sunet, așa că ai două variante: folosești pavucontrol sau pwvucontrol (vezi Metoda 2) sau lucrezi din terminal (vezi Metoda 3).

Pentru acces rapid, poți lega o tastă de comanda de mute, așa cum este descris în secțiunea Scurtături de tastatură în window managers. Dacă folosești Waybar sau Polybar, modulul pulseaudio sau wireplumber poate afișa și starea microfonului.

Metoda 2: pavucontrol (orice DE sau WM)

pavucontrol (în meniu apare ca PulseAudio Volume Control sau Control volum) funcționează la fel peste tot, atât cu PulseAudio cât și cu PipeWire, și îți oferă cel mai mult control fără să deschizi terminalul.

  • În tab-ul Input Devices (Dispozitive de intrare) apasă butonul de mute (iconița cu difuzor tăiat) de lângă microfonul intern. Lângă microfonul căștilor apasă butonul cu bifă (Set as fallback) ca să devină sursa implicită pentru toate programele.
  • În tab-ul Configuration (Configurare) alege pentru placa de sunet internă profilul Analog Stereo Output. În acest fel, placa rămâne folosită doar pentru ieșirea audio, iar microfonul intern dispare din listă. Setarea este reținută și după repornire.
  • În tab-ul Recording (Înregistrare) vezi în timp real ce programe folosesc microfonul și poți muta fiecare program pe alt dispozitiv de intrare, direct din lista derulantă din dreptul lui.

Atenție: pe unele laptopuri, mufa de căști de 3,5 mm (combo jack) și microfonul intern folosesc același profil. Dacă alegi Analog Stereo Output și ai căști cu fir conectate la mufa laptopului, vei pierde și microfonul căștilor. În acest caz folosește doar mute pe microfonul intern sau setează portul corect, din tab-ul Input Devices, câmpul Port.

Metoda 3: din terminal

Comenzile din terminal sunt utile mai ales în window managers, în scripturi sau atunci când vrei să legi mute-ul de o tastă.

# afișează dispozitivele și ID-urile lor
wpctl status
 
# pune pe mute sursa implicită
wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 1
 
# comută între mute și unmute
wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
 
# pune pe mute un dispozitiv anume, după ID-ul din wpctl status
wpctl set-mute 52 1
 
# setează microfonul căștilor ca sursă implicită
wpctl set-default 61

ID-urile din wpctl status se pot schimba după repornire sau după reconectarea dispozitivelor, așa că pentru scripturi este mai sigur să folosești pactl cu numele complet al dispozitivului.

# listează sursele
pactl list short sources
 
# pune pe mute microfonul intern
pactl set-source-mute alsa_input.pci-0000_00_1f.3.analog-stereo 1
 
# comută mute
pactl set-source-mute alsa_input.pci-0000_00_1f.3.analog-stereo toggle
 
# setează alt microfon ca implicit
pactl set-default-source alsa_input.usb-NUME_CASCA-00.mono-fallback
 
# listează plăcile de sunet
pactl list short cards
 
# schimbă profilul plăcii interne pe doar ieșire audio
pactl set-card-profile alsa_card.pci-0000_00_1f.3 output:analog-stereo
 
# revenire la profilul cu microfon
pactl set-card-profile alsa_card.pci-0000_00_1f.3 output:analog-stereo+input:analog-stereo

Numele profilurilor disponibile le găsești cu pactl list cards, în secțiunea Profiles a fiecărei plăci.

La nivel de ALSA poți opri captura direct din driverul plăcii de sunet. Rulează alsamixer, apasă F6 ca să alegi placa de sunet internă (nu „default“, care pe PipeWire arată de fapt mixerul PipeWire), apoi F4 pentru a vedea controalele de captură. Selectează Capture sau Internal Mic și apasă Space ca să dezactivezi captura (dispare indicatorul CAPTURE roșu).

Același lucru, din linie de comandă:

# listează controalele plăcii 0
amixer -c 0 scontrols
 
# oprește captura
amixer -c 0 set Capture nocap
 
# pe unele plăci există un control separat pentru microfonul intern
amixer -c 0 set 'Internal Mic Boost' 0
 
# salvează starea ca să fie restaurată la pornire
sudo alsactl store

Numele controalelor diferă de la o placă la alta, așa că verifică mai întâi lista afișată de scontrols. Pe sistemele cu PipeWire sau PulseAudio, serverul audio poate suprascrie aceste valori, așa că metoda ALSA este cea mai potrivită pentru sistemele fără server audio sau ca măsură suplimentară.

Metoda 4: dezactivare permanentă

Dacă nu folosești niciodată microfonul intern, cel mai curat este să îl scoți complet din sistem, astfel încât niciun program să nu îl mai poată alege.

Cu o regulă WirePlumber (PipeWire)

Această metodă ascunde complet microfonul intern, fără să afecteze ieșirea audio. Formatul fișierului depinde de versiunea WirePlumber afișată de wireplumber –version.

Folosită pe Fedora 40+, Arch, openSUSE Tumbleweed, Debian 13, Ubuntu 24.10+ și distribuțiile derivate din acestea.

mkdir -p ~/.config/wireplumber/wireplumber.conf.d
nano ~/.config/wireplumber/wireplumber.conf.d/51-disable-internal-mic.conf
51-disable-internal-mic.conf
monitor.alsa.rules = [
  {
    matches = [
      { node.name = "alsa_input.pci-0000_00_1f.3.analog-stereo" }
    ]
    actions = {
      update-props = {
        node.disabled = true
      }
    }
  }
]

Folosită pe Debian 12, Ubuntu 22.04 / 24.04, Linux Mint 21 / 22 și distribuțiile derivate din acestea.

mkdir -p ~/.config/wireplumber/main.lua.d
nano ~/.config/wireplumber/main.lua.d/51-disable-internal-mic.lua
51-disable-internal-mic.lua
rule = {
  matches = {
    {
      { "node.name", "equals", "alsa_input.pci-0000_00_1f.3.analog-stereo" },
    },
  },
  apply_properties = {
    ["node.disabled"] = true,
  },
}
 
table.insert(alsa_monitor.rules, rule)

Înlocuiește numele din exemplu cu cel găsit la tine, apoi repornește serviciile audio:

systemctl --user restart wireplumber pipewire pipewire-pulse

Dacă vrei ca regula să se aplice pentru toți utilizatorii sistemului, pune fișierul în /etc/wireplumber/ în loc de ~/.config/wireplumber/, păstrând aceeași structură de directoare. Pentru a reactiva microfonul, șterge fișierul și repornește serviciile.

Cu PulseAudio

Pe sistemele cu PulseAudio clasic, creează fișierul ~/.config/pulse/default.pa cu următorul conținut:

default.pa
.include /etc/pulse/default.pa
 
# scoate microfonul intern prin schimbarea profilului plăcii
set-card-profile alsa_card.pci-0000_00_1f.3 output:analog-stereo

Dacă preferi doar să îl pui pe mute la fiecare pornire, înlocuiește ultima linie cu:

set-source-mute alsa_input.pci-0000_00_1f.3.analog-stereo 1

Apoi repornește PulseAudio:

pulseaudio -k

Din BIOS / UEFI

Multe laptopuri (ThinkPad, Dell Latitude, HP EliteBook și altele din gamele business) permit dezactivarea microfonului intern direct din BIOS / UEFI, de obicei într-o secțiune numită Security → I/O Port Access, Integrated Devices sau Built-in Device Options. Este cea mai sigură variantă, pentru că microfonul este oprit la nivel hardware și nu mai este văzut de niciun sistem de operare instalat pe laptop.

Cu hdajackretask (avansat)

Pe plăcile de sunet Intel HDA poți marca pinul microfonului intern ca „neconectat“, astfel încât driverul să nu îl mai expună deloc. Metoda funcționează indiferent de serverul audio, dar este mai delicată, așa că folosește-o doar dacă celelalte variante nu ți se potrivesc.

sudo apt install alsa-tools-gui

sudo dnf install alsa-tools

sudo pacman -S alsa-tools

sudo zypper install alsa-tools

Pornește hdajackretask cu sudo, selectează codec-ul plăcii de sunet, bifează Show unconnected pins dacă e nevoie, găsește pinul descris ca Internal Mic, bifează Override și alege Not connected. Apasă Apply now ca să testezi, iar dacă rezultatul este cel dorit, apasă Install boot override ca modificarea să fie aplicată la fiecare pornire. Pentru a anula, rulezi din nou programul și apeși Remove boot override.

Căștile Bluetooth și mufa combo

Căștile Bluetooth funcționează în două moduri: A2DP, cu sunet de calitate bună dar fără microfon, și HSP/HFP (headset), cu microfon dar cu sunet de calitate mai slabă. Dacă vrei să folosești microfonul căștilor Bluetooth, trebuie să alegi profilul Headset din pavucontrol (tab-ul Configuration) sau din setările de sunet ale DE-ului. Odată ce profilul headset este activ, setează microfonul căștilor ca sursă implicită, ca programele să nu mai aleagă microfonul intern.

Mufa combo de 3,5 mm (căști și microfon în aceeași mufă) este de obicei detectată automat, iar sistemul comută singur pe microfonul căștilor atunci când le conectezi. Dacă pe laptopul tău microfonul căștilor nu este detectat, unele modele au nevoie de o opțiune pentru driver, de exemplu în /etc/modprobe.d/alsa-headset.conf:

options snd-hda-intel model=dell-headset-multi

Valoarea corectă pentru model depinde de producător și de placa de sunet, așa că verifică documentația kernelului sau forumurile dedicate modelului tău de laptop înainte să o aplici. După modificare este nevoie de o repornire.

Scurtături de tastatură în window managers

Multe laptopuri au o tastă dedicată pentru mute la microfon (de obicei F4 pe ThinkPad sau o combinație cu Fn), care trimite codul XF86AudioMicMute. În DE-uri tasta funcționează de obicei din prima, iar în window managers trebuie legată manual.

În ~/.config/i3/config:

bindsym XF86AudioMicMute exec --no-startup-id wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle

În ~/.config/sway/config:

bindsym --locked XF86AudioMicMute exec wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle

În ~/.config/hypr/hyprland.conf:

bindl = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle

În ~/.config/sxhkd/sxhkdrc:

XF86AudioMicMute
    wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle

În ~/.config/openbox/rc.xml, în secțiunea <keyboard>:

<keybind key="XF86AudioMicMute">
  <action name="Execute">
    <command>wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle</command>
  </action>
</keybind>

Dacă folosești PulseAudio în loc de PipeWire, înlocuiește comanda cu pactl set-source-mute @DEFAULT_SOURCE@ toggle. Comenzile de mai sus acționează asupra microfonului implicit, iar dacă vrei ca tasta să oprească întotdeauna microfonul intern, indiferent de ce dispozitiv este implicit, folosește pactl set-source-mute cu numele complet al acestuia.

Depanare

Ecoul se aude în continuare, deși microfonul intern e pe mute. Verifică dacă nu ai un modul de loopback încărcat, care trimite sunetul de la microfon direct în difuzoare:

pactl list short modules | grep loopback

Dacă apare ceva, îl poți descărca cu pactl unload-module ID. Verifică și în alsamixer (pe placa reală, cu F6) că nu este ridicat vreun canal de tip Mic sau Loopback în secțiunea de redare.

Un program folosește tot microfonul intern. Navigatoarele (Firefox, Chromium), Discord, Zoom, Teams și altele își aleg uneori singure dispozitivul de intrare, ignorând setările sistemului. Verifică setările audio din program și, în timp ce programul folosește microfonul, deschide tab-ul Recording din pavucontrol ca să vezi ce sursă folosește și să o schimbi. Lista programelor care înregistrează în acel moment o poți vedea și din terminal:

pactl list short source-outputs

Setarea de mute se pierde după repornire. WirePlumber reține starea dispozitivelor în ~/.local/state/wireplumber/, dar în unele situații (de exemplu după actualizări sau după ce dispozitivul a fost reconectat) aceasta este resetată. Folosește regula WirePlumber de la Metoda 4, care se aplică la fiecare pornire.

Ai nevoie de microfonul intern, dar fără ecou. În loc să îl dezactivezi, poți activa anularea ecoului din PipeWire. Creează fișierul ~/.config/pipewire/pipewire.conf.d/60-echo-cancel.conf:

60-echo-cancel.conf
context.modules = [
  {
    name = libpipewire-module-echo-cancel
    args = {
      capture.props = {
        node.name = "echo-cancel-capture"
      }
      source.props = {
        node.name = "echo-cancel-source"
        node.description = "Microfon cu anulare ecou"
      }
      sink.props = {
        node.name = "echo-cancel-sink"
        node.description = "Difuzoare cu anulare ecou"
      }
      playback.props = {
        node.name = "echo-cancel-playback"
      }
    }
  }
]

După systemctl –user restart pipewire pipewire-pulse wireplumber vei avea un dispozitiv de intrare nou, Microfon cu anulare ecou, și unul de ieșire, Difuzoare cu anulare ecou. Setează-le pe amândouă ca implicite, iar anularea ecoului va funcționa pentru toate programele. Pe PulseAudio clasic, echivalentul este linia load-module module-echo-cancel adăugată în ~/.config/pulse/default.pa.