C#获取PC的麦克风和扬声器音量

发布时间 2023-09-01 13:23:51作者: smile908

在网上找了很多的方法,都是使用的window提供的Api,可能是window版本不同,又或者是frameword版本不同

一直没有获取到电脑的麦克风音量以及扬声器声音。最后,直接只用第三方库函数NAudio成功获取到了电脑的扬声器和

麦克风音量,具体的代码如下:

private void getVolume()
{
MMDeviceEnumerator enumerator = new MMDeviceEnumerator();

// 获取默认扬声器设备
MMDevice defaultSpeaker = enumerator.GetDefaultAudioEndpoint(DataFlow.Render, Role.Multimedia);
float speakerVolume = defaultSpeaker.AudioEndpointVolume.MasterVolumeLevelScalar;

// 获取默认麦克风设备
MMDevice defaultMicrophone = enumerator.GetDefaultAudioEndpoint(DataFlow.Capture, Role.Communications);
float microphoneVolume = defaultMicrophone.AudioEndpointVolume.MasterVolumeLevelScalar;
MessageBox.Show("扬声器音量:" + speakerVolume+"\n"+ "麦克风音量:" + microphoneVolume);
}