声音分贝测试软件源码,C# 电脑录音 实例源码(根据声音分贝大小自动录制)
【实例简介】
【实例截图】
【核心代码】
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Oraycn.MCapture;
using Oraycn.MFile;
using System.Configuration;
namespace IntelligentRecord
{
public partial class Form1 : Form
{
private IMicrophoneCapturer microphoneCapturer;
private MyaudioFileMaker audioFileMaker = new MyaudioFileMaker(); //录制器
private accumulater lowDBFrameCounter = new accumulater();//低分贝计数器
private accumulater frameCounter = new accumulater();//帧数计数器
/*【大致思路】
* 程序启动时开启采集,用分贝显示器来获取每一帧的分贝。
在采集事件处理函数中轮询分贝值。
如果分贝值高于一定值,开启录制
如果分贝值低于一定值,低分贝计数器加一,帧数计数器加一
如果低分贝计数器在一定帧数内,低分贝计数器等于帧数计数器,即该段时间内持续低分贝,关闭录制
*/
public Form1()
{
InitializeComponent();
this.microphoneCapturer = CapturerFactory.CreateMicrophoneCapturer(0);//采集器,启动程序时即开启
this.microphoneCapturer.AudioCaptured = new ESBasic.CbGeneric(microphoneCapturer_AudioCaptured);//预定采集事件
this.microphoneCapturer.Start();//开始采集
//初始化录制器所需的参数
this.audioFileMaker.Initialize("test.mp3", this.microphoneCapturer.SampleRate, this.microphoneCapturer.ChannelCount);
}
void microphoneCapturer_AudioCaptured(byte[] data)
{
this.audioFileMaker.StartMakeFile(data);//录制器安插此处,通过IsWorking参数来控制其工作状态
this.frameCounter.Start(); //帧数计数器安插此处,用于记录在低分贝时期内的总帧数。通过IsWorking参数来控制其工作状态
this.decibelDisplayer1.DisplayAudioData(data);//分贝显示器显示音量
this.label_db.Text = this.decibelDisplayer1.Volume.ToString();//显示当前音量
this.label_RecordSign.Text = this.audioFileMaker.IsWorking ? "正在录音" : "未录音";
this.label_RecordSign.ForeColor = this.audioFileMaker.IsWorking ? Color.Blue : Color.Red;
//当音量高于开启值时,打开录制器
if (this.decibelDisplayer1.Volume > int.Parse(ConfigurationManager.AppSettings["DB2Open"]))
{
this.audioFileMaker.IsWorking = true;
}
//当记录的低分贝帧数达到一定值时,关闭两个计数器,然后总结这段时间内的帧状况
if (this.lowDBFrameCounter.Count > int.Parse(ConfigurationManager.AppSettings["checkCount"]))
{
//若低分贝帧数与总帧数一直,即该段时间内持续低分贝,则关闭录制
if (this.lowDBFrameCounter.Count == this.frameCounter.Count)
{
this.audioFileMaker.IsWorking = false;
}
this.frameCounter.IsWorking = false;
this.lowDBFrameCounter.IsWorking = false;
return;
}
//当音量低于阈值时,开启低分贝计数器与帧数计数器的计数
if (this.decibelDisplayer1.Volume < int.Parse(ConfigurationManager.AppSettings["DB2Close"]))
{
this.frameCounter.IsWorking = true;
this.lowDBFrameCounter.IsWorking = true;
this.lowDBFrameCounter.Start();
}
}
//关闭主窗时,释放采集器与录制器
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
this.microphoneCapturer.Dispose();
this.audioFileMaker.Dispose();
}
//打开文件夹
private void button_OpenDirectory_Click(object sender, EventArgs e)
{
this.audioFileMaker.OpenFileDirectory();
}
}
}
声音分贝测试软件源码,C# 电脑录音 实例源码(根据声音分贝大小自动录制)相关推荐
- 电脑测试软件_科普丨电脑小白必看的显卡测试小技巧
对很多电脑小白来说,新机入手总要亲自验证各大配件性能表现,之前给大家推过CPU测试软件.检测方法,今天这里小编继续说一下显卡的常用检测软件和相关注意事项. GPU-Z 此前说过GPU-Z可以对显卡进行 ...
- 变压器噪音分贝测试软件,一体机变压器绕组变形测试仪测试软件界面
原标题:一体机变压器绕组变形测试仪测试软件界面 变压器绕组 在计算机上能完成的大部分功能都能在一体机上操作.检查试验接线正确无误后,启动主测量单元 ,其电源指示灯应正常显示.. 以下介绍软件界面中各个 ...
- 电脑上测试软件打不开,电脑双击文件word软件打不开怎么办?
电脑提示"该文件没有与之关联的程序来执行该操作,请安装一个程序,或者,如果已经安装程序,请在[默认程序]控制面板中创建关联".不知道小伙伴们有没有遇到过类似的情况下面是学习啦小编收 ...
- 好用的录音软件排行 有哪些电脑录音工具
电脑录音已经是最普遍的功能了,不管是在工作还是学习中,多多少少都会使用到录音功能,不仅可以记录重要的音频,还可以录制自己喜欢的音频,话说录音软件那么多,哪个好用呢?今天和大家一起看看好用的录音软件排行 ...
- 分贝测试软件哪个好 家庭影院,家庭影院DIY攻略 攻略篇 – 5.2 音频解码能力
○ 音频解码能力越强,声音越好听. 音频解码,就是将数字音频信号还原成模拟音频信号,但声音看不见摸不着,所以举大家都很熟悉的数码照片为例,可能会更好理解. 数码照片文件越大,图像越真实,比如像素越多. ...
- 图像渲染测试软件,检测你的电脑是否支持Metal渲染技术的小工具
本帖最后由 bizongyi 于 2015-6-20 20:09 编辑 在刚召开的苹果WWDC大会上,与全新操作系统OS X El Capitan一同亮相的还有原来iOS平台上的图形渲染技术Metal ...
- win系统流畅度测试软件,视频对比:老电脑装Win7、Win10流畅性测试
原标题:视频对比:老电脑装Win7.Win10流畅性测试 Windows 10号称比Win7快30%,那么对于旧电脑来说,这一说法还成立吗? 下面网易找来了两台完全相同的三年前售价四千左右的主流电脑, ...
- 针式打印机无电脑测试软件,针式打印机可以连接电脑但是不能打印啊 一点反应都没有 测试可以打出来...
满意答案 Miner莫 推荐于 2018.06.25 采纳率:43% 等级:12 已帮助:6818人 pci卡需要安装专用的驱动,还有lpt端口一定要选对应的.然后装好驱动才可以. 建议找商家换 ...
- 微软surface屏幕测试软件,击败95%平板电脑 Surface Pro屏幕测试
01配置:Surface Pro一马当先 去年10月,微软推出了Surface Pro平板电脑,而今天我们要来聊的就是这款设备的屏幕表现.一般对于平板电脑的显示屏而言,以下几点很重要:1.触摸手感是否 ...
- 变压器噪音分贝测试软件,变压器噪声多少才是标准? 通过什么部门去告?
原标题:变压器噪声多少才是标准? 通过什么部门去告? 变压器噪声是由本体结构设计.选型布局.安装.使用过程中,变压器本体及冷却系统产生的不规则.间歇.连续或随机引起的机械噪声及空气噪声总和.变压器所产 ...
最新文章
- Socket中的异常和参数设置
- 太空乱游等待服务器响应,太空乱游(单机+联机)
- SQL基础操作_4_表的插入、更新、删除、合并操作
- java 常量接口_java接口定义常量研究
- unity3d 各个目录的意思
- C++primer第一章 开始
- 【Python】字符串(String)
- C#基础概念二十五问[转]
- 通讯与计算机网络作业,通讯与计算机网络作业平时作业(填空题问答和计算题)讲述.doc...
- J2EE 快速开发框架 Wabacus 3.3 版功能列表
- 优化器——梯度下降优化算法综述
- 运放输入偏置电流方向_【转】运放输入偏置电流
- CD卡命令和响应的详解
- DigiCert EV证书怎么样 DigiCert EV证书优势分析
- aws打开慢_亚马逊AWS服务器访问较慢,如何快速访问AWS服务器呢?
- JAVA计算机毕业设计自习室预订系统Mybatis+系统+数据库+调试部署
- 查看修改qcow2文件
- 记录:nodejs 裁切图片的方法
- 2.4G模块NRF24L01调试经验
- 加密与解密的基本概念--GPG加密工具的使用
热门文章
- python数字转换成中文大写_Python转换数字到中文大写格式
- CAD中PDF转DWG
- Intel/Nvidia双显卡笔记本用U盘安装ubuntu和Nvidia驱动
- 计算机显卡驱动不匹配,显卡驱动不兼容怎么办 显卡驱动降低旧版本方法
- 安卓Android类原生系统官网集合
- systrace打印
- 项目启动管理、需求分析、可行性方案论证 IT项目管理
- dvwa linux安装教程,CentOS 7 + DVWA 安装搭建过程
- Insyde uefi 隐藏设置_vivo手机怎么隐藏应用 vivo手机怎样把软件隐藏起来?
- 《应用商务统计分析》第五章 定序回归