如何确定Windows当前是否正在播放任何声音?
本文关键字:播放 任何 声音 是否 何确定 Windows | 更新日期: 2023-09-27 18:01:24
如何确定Windows当前正在通过主音频设备播放任何声音?我需要知道,这样我才能让我的程序自动调整音量
您可以使用CSCore。
在这里下载-> http://cscore.codeplex.com/
将这些行粘贴到控制台项目中。
using System;
using CSCore.CoreAudioAPI;
namespace AudioDetector
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(IsAudioPlaying(GetDefaultRenderDevice()));
Console.ReadLine();
}
public static MMDevice GetDefaultRenderDevice()
{
using (var enumerator = new MMDeviceEnumerator())
{
return enumerator.GetDefaultAudioEndpoint(DataFlow.Render, Role.Console);
}
}
public static bool IsAudioPlaying(MMDevice device)
{
using (var meter = AudioMeterInformation.FromDevice(device))
{
return meter.PeakValue > 0;
}
}
}
}
播放音乐是在YouTube,音乐播放器等…
运行程序。
它会自动通知(true/false)当前是否有音频正在播放。
你可能需要乱搞混音器控件。
混合控制
这些也可以帮助你。
用麦克风记录播放声音来测量扬声器音量
使用p/invoke和win-api来监控音频line-in (c#)