我需要在我的应用程序中捕获来自麦克风的输入流,该应用程序是用 VB.NET 编写的。我需要能够将这些数据流式传输到文件或通过 HTTP,并可能使用 LAME MP3 对其进行编码。有人可以帮我开始吗?
谢谢!
我需要在我的应用程序中捕获来自麦克风的输入流,该应用程序是用 VB.NET 编写的。我需要能够将这些数据流式传输到文件或通过 HTTP,并可能使用 LAME MP3 对其进行编码。有人可以帮我开始吗?
谢谢!
如果您想要一个 .NET 解决方案,您可以查看NAudio,它是一个开源音频库。查看WaveInStream
类(或WaveIn
最新代码)。这将让您打开麦克风,并接收包含最新捕获字节的事件。这将很容易传递给流。
至于使用 LAME 编码 MP3,我见过的一种方法是通过标准输入将音频传递给 lame.exe,然后从标准输出读取 mp3。我认为这比获取 LAME DLL 并为其编写互操作包装器更容易。
更新:我创建了一个示例项目,它使用 NAudio 从麦克风录制,并在http://voicerecorder.codeplex.com上将 LAME 保存为 MP3 。在此处查看我在 Coding4Fun 上的文章。
也许不是最新的体验,但我记得我在玩http://nyxtom.vox.com/library/post/recording-audio-in-c.html
对于更专业的事情,您可能需要查看 DirectSound API。
干杯。