首先我们需要定义
一个声音采集模块
IWaveIn waveIn;
在初始化窗口的时候
waveIn = new WaveIn { WaveFormat = new WaveFormat(8000, 1) }; waveIn.DataAvailable += waveIn_DataAvailable; waveIn.StartRecording();
启动它
那么,它有一个采集到声音就会触发的方法 DataAvailable
我们 += 后,就会出来一个默认的方法
waveIn_DataAvailable(object sender, WaveInEventArgs e)
我们可以通过(宝贝全在WaveInEventArgs 里)
short s = BitConverter.ToInt16(e.Buffer, 0); //vol.Content = Math.Abs(s / 50); var valInt = Math.Abs(s / 50) >= 100 ? 100 : Math.Abs(s / 50);
这种方式来获取到当前采集到声音的音量大小
接下来,你就可以为所欲为了~
效果图如下
至于右下角的提示,其实也很简单啦
定义一个窗体,每次Show到右下角就好啦~
源码:
csdn: https://download.csdn.net/download/u013176520/10954213
百度云 : https://pan.baidu.com/s/11cgK-IZaU1j7aqZ1Iu5ZIw 提取码: 2asu