Comment couper automatiquement le son lorsque les écouteurs sont débranchés sous Windows 10

Windows 10 peut conserver des profils audio séparés pour différents appareils audio. Pour chaque appareil audio que vous connectez, vous pouvez définir un niveau de volume différent et lorsque l'appareil est connecté, le volume s'ajustera automatiquement. Bien sûr, personne ne garde un périphérique audio en sourdine tout le temps. Ils augmenteront ou diminueront le volume, mais personne ne coupe habituellement le son d'un appareil audio.

Si vous utilisez une paire d'écouteurs avec votre bureau et que vous devez souvent les déconnecter, vous pouvez utiliser un petit script PowerShell qui coupera automatiquement le son lorsque vous débrancherez vos écouteurs.

C'est quelque chose que font les téléphones portables, c'est-à-dire que lorsque vous débranchez vos écouteurs, la musique s'arrête automatiquement. La logique derrière cela est que vous avez fini d'écouter de la musique ou que vous avez accidentellement retiré votre casque et que vous avez besoin d'un moyen rapide de l'éteindre. Le script a été essentiellement écrit sur ce même principe par  Prateek Singh de GEEKEEFY .

Comment couper automatiquement le son lorsque les écouteurs sont débranchés sous Windows 10

Couper automatiquement le son

Ouvrez le Bloc-notes et collez ce qui suit ;

[cmdletbinding()] Param() #Ajout de définitions pour accéder à l'API audio Add-Type -TypeDefinition @' en utilisant System.Runtime.InteropServices ; [Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IAudioEndpointVolume { // f(), g(), ... sont des emplacements de méthode COM inutilisés. Définissez-les si vous vous en souciez int f(); int g(); entier h(); entier i(); int SetMasterVolumeLevelScalar(float fLevel, System.Guid pguidEventContext); int j(); int GetMasterVolumeLevelScalar(out float pfLevel); entier k(); int l(); int m(); entier n(); int SetMute([MarshalAs(UnmanagedType.Bool)] bool bMute, System.Guid pguidEventContext); int GetMute(out bool pbMute); } [Guid("D666063F-1587-4E43-81F1-B948E807363F"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IMMDevice { int Activate (ref System.Guid id, int clsCtx, int activationParams, out IAudioEndpointVolume aev); } [Guid("A95664D2-9614-4F35-A746-DE8DB63617E6"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IMMDeviceEnumerator { int f(); // Unused int GetDefaultAudioEndpoint(int dataFlow, int role, out IMMDevice endpoint); } [ComImport, Guid("BCDE0395-E52F-467C-8E3D-C4579291692E")] class MMDeviceEnumeratorComObject { } public class Audio { static IAudioEndpointVolume Vol() { var enumerator = new MMDeviceEnumeratorComObject() as 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, out epv)); retour epv; } public static float Volume { get {float v = -1; Marshal.ThrowExceptionForHR(Vol().GetMasterVolumeLevelScalar(out v)); return v;} set {Marshal.ThrowExceptionForHR(Vol().SetMasterVolumeLevelScalar(value, System.Guid.Empty));} } public static bool Mute { get { bool mute; Marshal.ThrowExceptionForHR(Vol().GetMute(sortie muet)); retour muet; } set { Marshal.ThrowExceptionForHR(Vol().SetMute(value, System.Guid.Empty)); } } } '@ -Verbose While($true) { #Nettoyer tous les événements de la session en cours car il s'agit d'une boucle infinie, pour prendre un nouveau départ lorsque la boucle commence Get-Event | Remove-Event -ErrorAction SilentlyContinue #Enregistrement de l'événement et attente du déclenchement de l'événement Register-WmiEvent -Class Win32_DeviceChangeEvent Wait-Event -OutVariable Event |Out-Null $EventType = $Event.sourceargs. nouveauté | ` Objet de tri TIME_CREATED -Décroissant | ` Select-Object EventType -ExpandProperty EventType -First 1 #Logique conditionnelle à gérer, Quand couper/rétablir le son de la machine à l'aide de l'API audio If($EventType -eq 3) { [Audio]::Mute = $true Write-Verbose "Muet [$((Get-Date).tostring())]" } elseif($EventType -eq 2 -and [Audio]::Mute -eq $true) { [Audio]::Mute = $false Write-Verbose " Non muet [$((Get-Date).tostring())]" } }

Enregistrez-le avec l'extension de fichier PS1. Assurez-vous de sélectionner « Tous les fichiers » dans la liste déroulante des types de fichiers. Donnez au fichier un nom qui vous dira en un coup d'œil ce qu'il fait. Enregistrez-le dans un endroit où il est peu probable que vous le supprimiez par accident, mais aussi où vous pourrez le trouver facilement si vous en avez besoin.

Exécution du script

PowerShell ne peut pas simplement exécuter automatiquement un script. Il existe une mesure de sécurité intégrée qui l'empêche de le faire, mais il existe un moyen de le contourner. Nous avons un article détaillé sur la façon dont vous pouvez le faire. Suivez les instructions pour exécuter automatiquement le script PowerShell que vous venez de créer et utilisez une tâche planifiée pour démarrer le script chaque fois que vous démarrez votre PC.

Vous pouvez également exécuter manuellement le script lorsque vous démarrez votre système. Je l'utilise depuis moins de 30 minutes et je ne sais pas comment je vivais sans avant.

Laisser un commentaire

Comment créer un support dinstallation USB amorçable pour Windows 11 25H2

Comment créer un support dinstallation USB amorçable pour Windows 11 25H2

Pour créer une clé USB d'installation amorçable Windows 11 25H2, vous pouvez utiliser Rufus, Ventoy, l'invite de commandes et la création de supports, et voici comment.

La build 26220.7653 (KB5074157) pour Windows 11 apporte de nouvelles améliorations au mode sombre (Dev, Beta)

La build 26220.7653 (KB5074157) pour Windows 11 apporte de nouvelles améliorations au mode sombre (Dev, Beta)

KB5074157 (build 26220.7653) pour Windows 11 améliore le mode sombre, ajoute la prise en charge des fonds d'écran WebP et corrige des problèmes avec la barre des tâches, le menu Démarrer, le Bluetooth et plus encore.

La mise à jour KB5074109 de Windows 11 a été un désastre – Liste des principaux problèmes

La mise à jour KB5074109 de Windows 11 a été un désastre – Liste des principaux problèmes

La mise à jour KB5074109, la mise à jour de janvier 2026 pour Windows 11, a provoqué des plantages, des échecs de démarrage, des problèmes avec Outlook et des erreurs de désinstallation, obligeant les utilisateurs à la supprimer.

Comment empêcher les conversations ChatGPT dapparaître dans la recherche Google

Comment empêcher les conversations ChatGPT dapparaître dans la recherche Google

Empêchez vos conversations ChatGPT d'apparaître dans la recherche Google en vérifiant et en supprimant les liens ChatGPT publics partagés. Voici comment procéder.

Comment installer le sous-système Windows pour Android (WSA) sur Windows 11

Comment installer le sous-système Windows pour Android (WSA) sur Windows 11

Vous pouvez installer le sous-système Windows pour Android (WSA) afin d'exécuter des applications Android sur Windows 11 via le Microsoft Store ou PowerShell. Voici comment procéder.

Comment empêcher ChatGPT dutiliser vos données personnelles pour lentraînement de lIA ?

Comment empêcher ChatGPT dutiliser vos données personnelles pour lentraînement de lIA ?

OpenAI collecte par défaut le contenu de vos conversations ChatGPT pour l'entraînement de l'IA. Voici comment désactiver cette fonctionnalité pour une meilleure confidentialité.

La build 27913 pour Windows 11 inclut des modifications de lapplication Paramètres (Canary)

La build 27913 pour Windows 11 inclut des modifications de lapplication Paramètres (Canary)

La build 27913 (Canary) de Windows 11 apporte une interface utilisateur Paramètres repensée, restaure le son de démarrage de Vista, corrige les problèmes de fond d'écran noir, et plus encore.

Version 26120.4733 (KB5062651) pour Windows 11 24H2 avec modifications (Bêta)

Version 26120.4733 (KB5062651) pour Windows 11 24H2 avec modifications (Bêta)

La version 26120.4733 (KB5062651) pour Windows 11 intègre une nouvelle description d'image IA, une refonte des autorisations d'application et une protection d'administrateur dans le canal bêta.

La build 26200.5702 (KB5062653) pour Windows 11 25H2 apporte de nouvelles fonctionnalités (Dev)

La build 26200.5702 (KB5062653) pour Windows 11 25H2 apporte de nouvelles fonctionnalités (Dev)

La build 26200.5702 (KB5062653) pour Windows 11 25H2 apporte des descriptions d'images IA, une nouvelle sécurité d'administration, des boîtes de dialogue d'autorisation repensées et plus encore.

Comment installer une application avec Winget sous Windows 10 ?

Comment installer une application avec Winget sous Windows 10 ?

Vous pouvez désormais utiliser la commande winget pour installer des applications sous Windows 10. Voici les étapes à suivre à l'aide du Gestionnaire de packages Windows.