J'ai reçu ce code pour muet / activé le volume principal Je voudrais savoir comment puis-je obtenir le niveau de volume principal / précité, car je veux savoir si le son est déjà en sourdine ou non. P> EDIT:
Ou bien, j'aimerais diviser le son muet / netlute afin que je dispose de deux fonctions - une pour la muette et une pour la mutuelle. p> Merci P> P> P>
3 Réponses :
Ce fil < / a> montre comment contrôler le volume principal de C #. P>
Vous pouvez également être intéressé par les réponses à cette question: Obtenez le volume de son maître dans C # p>
Surtout le Nadio Wrapper géré. P>
Quoi, spécifiquement, n'a pas fonctionné? Les commentaires dans le fil indiquent que cela fonctionne.
Utilisé la fonction getvolume () et renvoyée 65535, après avoir changé le volume, il m'a renvoyé la même valeur - 65535. Peut-être que j'utilise la mauvaise fonction?
Cette autre question concerne l'intensité du son en cours de lecture, et non le gain actuellement défini dans le mélangeur.
Je cherche toujours une réponse. Aucun des threads que Jim a donné fonctionne.
Regardez ce projet http://www.codeproject.com/kb /vista/coreaudio.aspx
Ils ont créé un propre contrôle de mélangeur, qui signale également la volumne actuelle et l'état MUTE / SALUTE: P>
MMDeviceEnumerator devEnum = new MMDeviceEnumerator(); MMDevice defaultDevice = devEnum.GetDefaultAudioEndpoint(EDataFlow.eRender, ERole.eMultimedia); defaultDevice.AudioEndpointVolume.Mute = true; // or false
Le lien de codeProject est mort
Cela fonctionne merveille. Notez que vous devrez faire référence à Naudio.dll avec l'espace de noms suivant: Utilisation de Naudio.coreaudioapi ;. MasterVolumelevelsCalar est une échelle linéaire 0-1, tandis que Mastervolumelevel est une échelle non linéaire.
Je ne pouvais pas le faire pour toutes les versions Windows (XP, Vista & 7).
Cependant, je l'ai atteint par des programmes externes usagés, tels que NIRCRMD et envoyé la commande i nécessaire. p>
Pas si bonne solution mais cela a résolu mon problème. P>