입력 음원은 국가 별 악기를 통해 연결된 마이크입니다. 들어오는 신호 형식은 (IEEEFloat, 초당 51200 샘플, 100ms 읽기주기) 배열 double[] samples
으로 표시됩니다. 100ms마다 마이크에서 들어오는 신호가 이중 []으로 나타납니다. Windows 컴퓨터에서 기본 사운드 카드를 사용하여이 신호를 재생하는 방법.NAudio play IEEEFloat 형식
public void Open()
{
var _format = new WaveFormatChunk
{
SamplesPerSecond = Convert.ToUInt32(51200),
BitsPerSample = 32,
Channels = 1,
FormatEncoding = WaveFormatEncoding.IeeeFloat
};
_waveOutDevice = new WaveOut
{
DesiredLatency = 100
};
_waveProvider = new BufferedWaveProvider(_format.ToWaveFormat());
_waveOutDevice.Init(WaveProvider);
}
public void Consume(double[] samples)
{
var bytes = samples.ToBytes();
_waveProvider.AddSamples(bytes, 0, bytes.Length);
}
public void Play()
{
_waveOutDevice.Play();
}
소리가 들리면 클릭 (핀 찌름 소리)이 100ms마다 발생할 수 있습니다. 마이크에서 음성이나 다른 소리를들을 수 없습니다. 여기서 뭐가 틀린거야?