首页 > 其他 > 详细

监控麦克风是否有声音输入

时间:2019-02-12 17:38:36      阅读:295      评论:0      收藏:0      [点我收藏+]

首先我们需要定义

一个声音采集模块

技术分享图片
IWaveIn waveIn;
View Code

在初始化窗口的时候

技术分享图片
waveIn = new WaveIn { WaveFormat = new WaveFormat(8000, 1) };
                waveIn.DataAvailable += waveIn_DataAvailable;
                waveIn.StartRecording();
View Code

启动它

那么,它有一个采集到声音就会触发的方法   DataAvailable

我们 += 后,就会出来一个默认的方法

技术分享图片
waveIn_DataAvailable(object sender, WaveInEventArgs e)
View Code

我们可以通过(宝贝全在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 

监控麦克风是否有声音输入

原文:https://www.cnblogs.com/myblogslh/p/10366064.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!