Cómo silenciar automáticamente el sonido cuando los auriculares están desconectados en Windows 10

Windows 10 puede mantener perfiles de audio separados para diferentes dispositivos de audio. Para cada dispositivo de audio que conecte, puede establecer un nivel de volumen diferente y cuando el dispositivo esté conectado, el volumen se ajustará automáticamente. Por supuesto, nadie mantiene un dispositivo de audio en silencio todo el tiempo. Subirán o bajarán el volumen, pero nadie silencia habitualmente un dispositivo de audio.

Si usa un par de auriculares con su escritorio y, a menudo, tiene que desconectarlos, puede usar un pequeño script de PowerShell que silenciará automáticamente el sonido cuando desconecte sus auriculares.

Esto es algo que hacen los teléfonos móviles, es decir, cuando desconecta los auriculares, la música se detiene automáticamente. La lógica detrás de esto es que o ha terminado de escuchar música o se ha quitado accidentalmente los auriculares y necesita una forma rápida de apagarlos. El guión fue escrito básicamente con el mismo principio por  Prateek Singh de GEEKEEFY .

Cómo silenciar automáticamente el sonido cuando los auriculares están desconectados en Windows 10

Silenciar automáticamente el sonido

Abra el Bloc de notas y pegue lo siguiente;

[cmdletbinding ()] Param () # Agregar definiciones para acceder a la API de audio Add-Type -TypeDefinition @ 'usando System.Runtime.InteropServices; [Guid ("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType (ComInterfaceType.InterfaceIsIUnknown)] interface IAudioEndpointVolume {// f (), g (), ... son ranuras de métodos COM no utilizados. Defínalos si le importa int f (); int g (); int h (); int i (); int SetMasterVolumeLevelScalar (nivel flotante, System.Guid pguidEventContext); int j (); int GetMasterVolumeLevelScalar (out float pfLevel); int k (); int l (); int m (); int n (); int SetMute ([MarshalAs (UnmanagedType.Bool)] bool bMute, System.Guid pguidEventContext); int GetMute (fuera bool pbMute); } [Guid ("D666063F-1587-4E43-81F1-B948E807363F"), InterfaceType (ComInterfaceType.InterfaceIsIUnknown)] interface IMMDevice {int Activate (ref System.Guid id, int clsCtx, int ActivaciónParams, salida IAudioEndpointVolume aev); } [Guid ("A95664D2-9614-4F35-A746-DE8DB63617E6"), InterfaceType (ComInterfaceType.InterfaceIsIUnknown)] interfaz IMMDeviceEnumerator {int f (); // Unused int GetDefaultAudioEndpoint (int dataFlow, int role, out IMMDevice endpoint); } [ComImport, Guid ("BCDE0395-E52F-467C-8E3D-C4579291692E")] clase MMDeviceEnumeratorComObject {} clase pública Audio {static IAudioEndpointVolume Vol () {var enumerator = new MMDeviceEnumeratorComObject () como IMMDeviceEnumerator; IMMDevice dev = null; Marshal.ThrowExceptionForHR (enumerator.GetDefaultAudioEndpoint (/ * eRender * / 0, / * eMultimedia * / 1, out dev)); IAudioEndpointVolume epv = null; var epvid = typeof (IAudioEndpointVolume) .GUID; Marshal.ThrowExceptionForHR (dev.Activate (ref epvid, / * CLSCTX_ALL * / 23, 0, fuera epv)); return epv; } Volumen flotante estático público {get {float v = -1; Marshal.ThrowExceptionForHR (Vol (). GetMasterVolumeLevelScalar (fuera de v)); return v;} set {Marshal.ThrowExceptionForHR (Vol (). SetMasterVolumeLevelScalar (valor, System.Guid.Empty));}} public static bool Mute {get {bool mute; Marshal.ThrowExceptionForHR (Vol (). GetMute (fuera de silencio)); volver mudo; } set {Marshal.ThrowExceptionForHR (Vol (). SetMute (valor, System.Guid.Empty)); }}} '@ -Verbose While ($ true) {# Limpiar todos los eventos en la sesión actual, ya que está en un bucle infinito, para comenzar de nuevo cuando comience el bucle Get-Event | Remove-Event -ErrorAction SilentlyContinue #Registrando el evento y esperando que se active el evento Register-WmiEvent -Class Win32_DeviceChangeEvent Wait-Event -OutVariable Event | Out-Null $ EventType = $ Event.sourceargs. newevent | `Ordenar-Objeto TIME_CREATED -Descending | `Select-Object EventType -ExpandProperty EventType -First 1 # Lógica condicional para manejar, Cuándo silenciar / des-silenciar la máquina usando la API de audio If ($ EventType -eq 3) {[Audio] :: Mute = $ true Write-Verbose" Muted [$ ((Get-Date) .tostring ())] "} elseif ($ EventType -eq 2-y [Audio] :: Mute -eq $ true) {[Audio] :: Mute = $ false Escritura detallada" Sin silenciar [$ ((Get-Date) .tostring ())] "}}

Guárdelo con la extensión de archivo PS1. Asegúrese de seleccionar 'Todos los archivos' en el menú desplegable de tipo de archivo. Asigne un nombre al archivo que le dirá de un vistazo lo que hace. Guárdelo en algún lugar en el que no sea probable que lo elimine por accidente, pero también donde pueda encontrarlo fácilmente si lo necesita.

Ejecutando el guión

PowerShell no puede simplemente ejecutar automáticamente un script. Hay una medida de seguridad incorporada que evita que lo haga, pero hay una forma de evitarlo. Tenemos un artículo detallado sobre cómo puede hacer precisamente eso. Siga las instrucciones para ejecutar automáticamente el script de PowerShell que acaba de crear y utilice una tarea programada para iniciar el script cada vez que inicie su PC.

Alternativamente, puede ejecutar manualmente el script cuando inicie su sistema. Lo he estado usando por menos de 30 minutos y no sé cómo vivía sin él antes.

Leave a Comment

Cómo abrir archivos .key en Windows 10

Cómo abrir archivos .key en Windows 10

Aprenda cómo abrir y convertir archivos .key en Windows 10 usando herramientas como Google Slides, iCloud y programas de conversión en línea.

Cómo reparar el error WDF_VIOLATION en Windows 10 (Guía completa)

Cómo reparar el error WDF_VIOLATION en Windows 10 (Guía completa)

WDF_VIOLATION es un error de pantalla azul de la muerte que puede deberse a varios problemas a nivel de software o hardware. Inmoviliza tu computadora y

Cómo arreglar la pantalla naranja de la muerte en Windows 10

Cómo arreglar la pantalla naranja de la muerte en Windows 10

La pantalla naranja de la muerte (OSOD) es un evento raro que ocurre en Windows 10 debido a problemas de hardware o software. Encuentra increíbles soluciones aquí.

OneDrive no se sincroniza: cómo solucionar problemas de sincronización de OneDrive en Windows 10

OneDrive no se sincroniza: cómo solucionar problemas de sincronización de OneDrive en Windows 10

Encuentra soluciones efectivas para problemas de sincronización de OneDrive en Windows 10. Siga nuestros pasos detallados para arreglar OneDrive fácilmente.

Microsoft Money: Cómo usar la aplicación Original Money en Windows 10

Microsoft Money: Cómo usar la aplicación Original Money en Windows 10

Descubre cómo utilizar Microsoft Money en Windows 10, incluyendo la descarga, la configuración, y cómo gestionar presupuestos y cuentas.

Conversión VLC sin sonido: Cómo arreglar el convertidor VLC sin error de audio

Conversión VLC sin sonido: Cómo arreglar el convertidor VLC sin error de audio

VLC es la aplicación ideal para reproducir y convertir todo tipo de archivos multimedia. Aquí te mostramos cómo solucionar el problema de la conversión sin sonido.

Cómo mover archivos entre unidades con arrastrar y soltar en Windows 10

Cómo mover archivos entre unidades con arrastrar y soltar en Windows 10

Aprenda a mover archivos entre unidades usando la técnica de arrastrar y soltar en Windows 10 de forma rápida y sencilla.

Cómo bloquear la actualización automática de Chromium Edge en Windows 10

Cómo bloquear la actualización automática de Chromium Edge en Windows 10

Impactante guía para bloquear la actualización automática de Chromium Edge en Windows 10. Aprende a personalizar tu navegador y mantener tu sistema como prefieres.

Cómo desinstalar una aplicación portátil en Windows 10

Cómo desinstalar una aplicación portátil en Windows 10

Las aplicaciones portátiles son fáciles de usar y no requieren instalación, pero pueden dejar archivos residuales. Descubra cómo desinstalarlas correctamente.

Cómo mapear recursos compartidos NFS en Windows 11

Cómo mapear recursos compartidos NFS en Windows 11

¿Quiere conectarse a su servidor NFS basado en Linux en una PC con Windows 11? Aprenda a interactuar con NFS en Windows 11 con esta guía.