【发布时间】:2011-08-30 09:13:33
【问题描述】:
有没有办法捕获仅由单个应用程序而不是整个系统输出的音频?使用WASAPI,我可以捕获the entire system audio,但我希望只捕获来自一个应用程序的音频(会有很多应用程序,所有应用程序都同时播放音频。)
【问题讨论】:
-
嗨。我对捕获整个系统音频很感兴趣。你是怎么做到的?一些指针?
有没有办法捕获仅由单个应用程序而不是整个系统输出的音频?使用WASAPI,我可以捕获the entire system audio,但我希望只捕获来自一个应用程序的音频(会有很多应用程序,所有应用程序都同时播放音频。)
【问题讨论】:
Detours 用于挂钩。使用lib hookIAudioRenderClient接口,包括GetBuffer和ReleaseBuffer,从缓冲区中读取数据。
【讨论】:
根据应用程序用于播放音频的 API,您可以编写一个 AppInit DLL 来包装内置的 waveIn\waveOut 函数并传递音频数据。我知道这适用于 waveIn\waveOut 函数,但不确定 Windows 7 上还有哪些其他音频播放接口以及它们是否与 AppInit 技巧兼容。
【讨论】: