CSharp 麦克风使用

Nuget导包:

<PackageReference Include="NAudio" Version="2.1.0" />

引包

using NAudio.Wave;
	var waveInEvent = new WaveInEvent();
    waveInEvent.BufferMilliseconds = 20; // 指定每X毫秒采集一次
    waveInEvent.WaveFormat = new WaveFormat(16000, 16, 1); // 16K, 16, 1,这里选择适合自己的参数
    var wavName = $"Test_{
      
      DateTime.UtcNow:MMdd_HH.mm.ss}.wav";
    var writer = new WaveFileWriter(wavName, waveInEvent.WaveFormat);
    waveInEvent.DataAvailable += (s, args) => writer.Write(args.Buffer, 0, args.BytesRecorded);
    // 开始采集
    waveInEvent.StartRecording();
    
    // 这里做事情
    // 结束做事情
    
    // 结束采集
    waveInEvent.StopRecording();
    writer.Close();

猜你喜欢

转载自blog.csdn.net/qq_27093891/article/details/128548015