【问题标题】:Win7: Get microphone mute statusWin7:获取麦克风静音状态
【发布时间】:2013-08-29 17:22:12
【问题描述】:

我的主要目标是有一个程序,它允许我使用“滚动锁定”键在 Windows 下静音/取消静音我的麦克风。由于键盘上的滚动锁定灯,这将为我提供一个很好的指标,表明麦克风是否已静音。

如何获取有关麦克风状态的信息 - 是否静音? 我可以调用任何dll来实现这一点?

谢谢

【问题讨论】:

    标签: windows status microphone mute


    【解决方案1】:

    使用 CoreAudioApi。你可以找到 dll here。 使用此功能查找您的麦克风:

      private List<MMDevice> gMicrophoneDevices = new List<MMDevice>();//global variable
      private bool findMicrophones()
            {
                MMDeviceEnumerator DevEnum = new MMDeviceEnumerator();
                MMDeviceCollection devices = DevEnum.EnumerateAudioEndPoints(EDataFlow.eCapture, EDeviceState.DEVICE_STATE_ACTIVE);
                for (int i = 0; i < devices.Count; i++)
                {
                    MMDevice deviceAt = devices[i];
                    if (deviceAt.FriendlyName.ToLower() == "microphone" || deviceAt.FriendlyName.ToLower() == "микрофон")//you can add more languages here
                        gMicrophoneDevices.Add(deviceAt);                
                }
                if (gMicrophoneDevices.Count == 0)
                    return false;
                else return true;
            }
    

    找到麦克风设备后,使用它来获取它的静音状态:

    gMicrophoneDevices[0].AudioEndpointVolume.Mute
    

    如果是真的,那么您的第一个麦克风已静音。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-26
      • 2023-04-02
      • 2016-06-01
      • 2021-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多