visual socket hacer con comunicar como aplicaciones c# .net windows audio directsound

c# - socket - Cómo hacer que mi aplicación sea considerada como un programa de comunicación en Windows.



comunicar dos aplicaciones c# (1)

Estoy creando un programa que utiliza la biblioteca de Speech y me gustaría silenciar o reducir todos los demás sonidos cuando la señora está hablando.

He estado buscando una forma de silenciar otras aplicaciones manualmente, pero he visto una opción en Windows en la pestaña de comunicación (dentro de las opciones de sonido) que menciona que la ventana puede administrar esto por mí. Como en esta imagen:

Básicamente, ¿qué se necesita para que mi aplicación sea considerada como una aplicación de comunicación (como Skype)?


Creo que las aplicaciones de comunicación están implementando algo relacionado con la interfaz IAudioVolumeDuckNotification . El ejemplo de C ++ proporcionado también hace referencia a los mensajes de las ventanas WM_VOLUME_DUCK y WM_VOLUME_UNDUCK que pueden ser suficientes (pero no parecen estar documentados o con capacidad de búsqueda en Google).

ACTUALIZAR

El proyecto .NET Core Audio API en CodePlex parece proporcionar un contenedor .NET.

ACTUALIZAR

En la aplicación de muestra MSDN DuckingMediaPlayer se puede encontrar una implementación de C ++ de IAudioVolumeDuckNotification , así como un ejemplo de notificación del estado ducked . Realmente funciona (lo probé). Una combinación de métodos PInvoke''ing y la envoltura de .NET para la interfaz debería ser suficiente para ponerlo en marcha.