Comment faire en sorte que ma demande soit considérée comme un programme de communication dans Windows

StackOverflow https://stackoverflow.com/questions/8885167

Question

Je fais un programme qui utilise la bibliothèque vocale et j'aimerais que tous les autres sons soient coupés ou réduits lorsque la dame parle.

J'ai cherché un moyen de fouiller les autres applications manuellement, mais j'ai vu une option dans Windows dans l'onglet Communication (à l'intérieur des options sonores) qui mentionne que la fenêtre peut gérer cela pour moi. Comme sur cette image:

enter image description here

Donc, en gros, que faut-il pour que mon application soit considérée comme une application de communication (comme Skype)?

Était-ce utile?

La solution

Je crois que les applications de communication implémentent quelque chose lié à IAudioVolumeDuckNotification interface. L'exemple C ++ fourni également des références WM_VOLUME_DUCK et WM_VOLUME_UNDUCK Messages Windows qui peuvent être suffisants (mais ne semblent pas être Google ou Google ou documentés).

METTRE À JOUR

La Projet API audio .NET. sur CodePlex semble fournir un wrapper .NET.

METTRE À JOUR

Un exemple de mise en œuvre C ++ de IAudioVolumeDuckNotification ainsi qu'un exemple de notification du ducked L'état peut être trouvé dans le MSDN DuckingMediaPlayer Exemple d'application. Cela fonctionne réellement (je l'ai essayé). Une combinaison de Pinvoke'ing quelques méthodes et l'emballage .NET pour l'interface devrait être suffisant pour vous mettre sur votre chemin.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top