我尝试使用可以播放流式音频数据的C#开发Windows应用程序。基本上,我将有一个客户端应用程序负责播放不同的音频文件。目前,我从客户端应用程序中提取硬件配置参数,然后通过网络传输文件数据(PCM流)。
因此可以使用从客户端发送的硬件配置参数来配置实际硬件(在服务器端),然后将文件数据流提供给它,以便它可以播放音频数据。
在搜索时,我了解了NAudio
。 NAudio能否做到这一点,或者对我来说更好的选择是使用Directsound APIS切换到nativ C / C ++代码。
更新
通过配置硬件,我的意思是设置与音频播放相关的参数。这些参数包括sample rate
(例如:44100 Hz),number of channels
(例如:立体声),storage format
(例如:16位小端)等。
我的客户端应用程序在Linux上,我已经种植了一个ALSA驱动程序,它拦截PCM流和hw_params配置,然后将它们发送到服务器。
更新结束
感谢。
答案 0 :(得分:2)
如果查看latest NAudio code,您会看到NAudioDemo示例应用程序中有两个播放流式音频的示例。一个是通过UDP发送压缩语音的基本聊天应用程序,另一个是播放流式MP3网络电台。我建议您查看一下,然后尝试示例应用,看看它是否符合您的需求。