我正在尝试流式传输并播放来自TCP:端口的音频数据。 数据是无符号8位,数据速率是11.025KHz。
我接收数据没有问题,但我需要一些代码帮助才能让音频流与C#和NAudio一起使用。
答案 0 :(得分:2)
NAudio有BufferedWaveProvider课程,仅供您参考。您可以像这样使用它:
var bufferedStream = new BufferedWaveProvider(format);
var waveOut = new WaveOut();
waveOut.Init(bufferedStream);
waveOut.Play();
现在你应该为缓冲提供者提供你的数据(可能在另一个线程中):
var buffer = GetData(); // Here is your code
bufferedStream.AddSamples(buffer, 0, buffer.Length);
您可能想要检查缓冲区中是否有足够的数据,否则暂停播放或其他内容。
This tutorial解释了它如何在NAuduo中发挥作用。 here就是一个例子。