2

我正在创建一个视频聊天应用程序,但在传输麦克风音频时遇到问题。我已经有视频流,但我希望找到捕获笔记本电脑内置麦克风并进行流式传输的最佳方法。目前我正在使用 aNetworkStream发送视频。我对 NAudio ( http://naudio.codeplex.com/ ) 的经验有限,但麦克风捕获的每个示例似乎都不包含New Audio Frame事件(这是我发送视频帧的方法)。

我一直在查看http://voicerecorder.codeplex.com/但它似乎超出了我的需要,并且不包括流媒体。

如果可能的话,如何捕获麦克风音频并将其流式传输,而不需要将音频保存到文件的开销?我很感激一个简单的例子。

4

1 回答 1

4
  1. Create a new WaveIn object
  2. call StartRecording
  3. in the DataAvailable event handler, transmit args.BytesRecorded bytes from args.Buffer across the network.

Note that this will mean you are transmitting PCM, which is not very efficient. Normally for network streaming you would use a codec. In the NAudioDemo source code there is a Network Chat demo showing this in action.

于 2013-06-27T14:29:10.630 回答