2011-09-26 101 views
1

我正在使用Windows 7并使用Visual Studio 2010开发类似聊天的应用程序。我正在寻找一种从麦克风(或更确切地说,来自默认记录设备)捕获音频的简单方法,从所述输入中收集缓冲区,并通过套接字发送。我已经看到DirectX解决方案的建议,但从我的研究来看,这与简单的情况完全相反。用于简单捕获/保存文件程序的5000行示例代码?这根本不适用于我(是的,这是SDK提供的官方示例)。如何从麦克风捕获音频以通过套接字发送?

无论如何,我不需要它是跨平台的,我真的更喜欢Windows已经有的东西,尽管我不介意安装一个库,只要它不会花费更长的时间硬件驱动程序从头开始弄清楚(夸张)。我听说过这个waveInOpen函数,但奇怪的是我找不到有关如何使用它的任何演示。如果任何人有一个想法或一些示例代码的链接,我将不胜感激。感谢大家的时间!

P.S.我可以自己弄清楚网络部分。我只需要访问原始音频数据缓冲区。

+0

当您搜索Google(或甚至堆栈溢出本身)“waveInOpen”时,您发现了什么? –

+0

我一直在过去的2个小时里找到同样的东西 - 问题和/或明显的事实。我需要一个演示。 – Sefu

+0

[如何从C++(操作系统Windows)中的麦克风获取PCM数据?](http://stackoverflow.com/questions/2351659/how-to-get-pcm-data-from-microphone-in-c -os-windows) –

回答

3

如果你正在做的插座自己尝试检查了:

http://www.techmind.org/wave/

http://www.bcbjournal.com/articles/vol2/9810/Low-level_wave_audio__part_3.htm

http://www.relisoft.com/freeware/recorder.html

我喜欢所有的人,但最后一个的,但话又说回来,你可能会发现它更有帮助。

+1

谢谢!这正是我一直在寻找的。 – Sefu

+0

只要它有帮助...我有点担心,因为我只有C或C++的例子,因为我真的没有任何其他语言的例子。 –