Quantcast
Channel: NAudio
Viewing all articles
Browse latest Browse all 5831

New Post: How to use WaveFormatConversionStream inside waveIn_DataAvailable into WaveFileWriter

$
0
0
Hi All, been looking everywhere with no luck.
var wasapiIn = new WasapiCapture(device);
wasapiIn.DataAvailable += waveIn_DataAvailable;
wasapiIn.RecordingStopped += waveIn_RecordingStopped;
wasapiIn.StartRecording();

public void waveIn_DataAvailable(object sender, WaveInEventArgs e)
{
        using (var converter = new WaveFormatConversionStream(????))
        {
             writer.Write(????);
        }
}  
meanwhile i am using Resampler in the following way
MediaBuffer b = new MediaBuffer(e.Buffer.Length);
b.LoadData(e.Buffer, e.BytesRecorded);
resampler.MediaObject.ProcessInput(0, b, DmoInputDataBufferFlags.None, 0, 0);
using (DmoOutputDataBuffer outputBuffer = new DmoOutputDataBuffer(waveFmt.AverageBytesPerSecond))
{
resampler.MediaObject.ProcessOutput(DmoProcessOutputFlags.None, 1, new DmoOutputDataBuffer[] { outputBuffer });
byte[] oBytes = new byte[outputBuffer.Length];
outputBuffer.RetrieveData(oBytes, 0);
writer.Write(oBytes, 0, oBytes.Length);
}

but i suspect that my output sound quality is a bit poor so maybe WaveFormatConversionStream might be faster

thanks in advance

Viewing all articles
Browse latest Browse all 5831


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>