zoukankan      html  css  js  c++  java
  • c# NAudio 录音功能实现

    1.首先新建引用类  RecordController

    public class RecordController

        {

            public WaveIn mWavIn;

            public WaveFileWriter mWavWriter;

            /// <summary>

            /// 开始录音

            /// </summary>

            /// <param name="filePath"></param>

            public void StartRecord(string filePath)

            {

                mWavIn = new WaveIn();

                mWavIn.DataAvailable += MWavIn_DataAvailable;

                // mWavIn.RecordingStopped += MWavIn_RecordingStopped; 有冲突

                mWavWriter = new WaveFileWriter(filePath, mWavIn.WaveFormat);

                mWavIn.StartRecording();

            }

            /// <summary>

            /// 停止录音

            /// </summary>

            public void StopRecord()

            {

                mWavIn?.StopRecording();

                mWavIn?.Dispose();

                mWavIn = null;

                mWavWriter?.Close();

                mWavWriter = null;

            }

            //这个方法在调用关闭时会有冲突

            private void MWavIn_RecordingStopped(object sender, StoppedEventArgs e)

            {

                //mWavIn?.Dispose();

                //mWavIn = null;

                //mWavWriter?.Close();

                //mWavWriter = null;

            }

            private void MWavIn_DataAvailable(object sender, WaveInEventArgs e)

            {

                mWavWriter.Write(e.Buffer, 0, e.BytesRecorded);

                int secondsRecorded = (int)mWavWriter.Length / mWavWriter.WaveFormat.AverageBytesPerSecond;

            }

        }

    简单的调用代码。

        RecordController record = new RecordController();

           

       private void button1_Click(object sender, EventArgs e)

            {

                record.StartRecord("e:\rec.wav");

            }

            private void button2_Click(object sender, EventArgs e)

            {

                record.StopRecord();

            }

  • 相关阅读:
    总有一天你会爱上我
    你已把我的心带走
    创业提示】创业不能以赚多少钱为目标!
    创业测试:看看你身上成功的潜质
    迁芸(名字作诗)
    请你陪我一程
    智力型企业领导艺术
    方学萍(帮别人名字作诗)
    创业者身上一定要存在的几点修为
    以小博大:小本成功创业经验谈
  • 原文地址:https://www.cnblogs.com/bruce1992/p/14681814.html
Copyright © 2011-2022 走看看