我可以以编程方式将发送到声卡的数据流保存为WAV文件吗?

时间:2010-08-16 21:01:10

标签: windows audio audio-recording

在Windows XP中,您可以通过预加载的Windows软件配置声卡属性。在录制属性中,如果选择“立体声混合”或“波形输出”(或类似的东西)作为录制设备,则可以录制音频的节目(例如,在窗口中的“录音机”)录制一个体面的质量波形文件。音频流。我通常使用download.com上的Goldwave作为第三方应用程序的一个例子。

好吧,如上所述,我无法在Windows Vista或更高版本上以直接无故障方式实现此方案。它不仅仅是Vista +,还有一些声卡根本没有这个选项。

我只是想知道是否有办法运行一个Windows友好程序(VB?),它将您的音频输出流转换为(实时显然)转换为WAV文件,其默认采样率为其他WAV文件有。

理想情况下,如果它可以在任何操作系统上运行,它会很酷,那么有可能编写一个“监听”你的声卡的网络服务,而不会让计算机认为它正在遭受病毒攻击吗?

可能相关的问题: How to save web audio streaming to file ( c++ / java )

3 个答案:

答案 0 :(得分:1)

我只知道有一个启用该选项的声卡制造商(Creative)。然而,Vista及更高版本支持“环回”模式,可以为您提供有效的相同功能。您需要使用低级WASAPI渲染堆栈,但应该正常工作。

答案 1 :(得分:1)

https://github.com/rdp/virtual-audio-output-sniffer提供了一个directshow输入设备来捕获vista +的波形总和

答案 2 :(得分:0)

您可以使用低级waveOut API注入并捕获它收到的内容。

我有一个SkypeMXrecorder,一个可以做到这一点的软件 - 注入任何exe并'嗅探'从它发出的声音和声音硬件。但是,实施起来似乎相当复杂......