获取扬声器音频信号然后将其流出

chr*_*mer 7 windows audio macos audio-streaming

我正在尝试构建我认为是基本应用程序的东西.好吧,两个应用程序一个用于Windows,一个用于OS X.我想捕获正在播放的音频信号(即,如果用户正在播放他/她的扬声​​器音乐).然后取出该信号并将其流出,以便另一台计算机可以"收听".另一台计算机是Windows或OS X.

  1. 有关如何获取音频信号的任何想法?
  2. 没有第三方插件的流媒体音频最有效的方法是什么?如果有一个开源解决方案,我会感兴趣.

谢谢!

克里斯

Rei*_*man 3

在 Windows XP 上,这根本不是小事,因为如果不编写音频过滤器驱动程序,就无法拦截输出信号(这不适合胆小的人)。

在 Windows Vista 及更高版本上,您可以使用 WASAPI API(内置于 Windows 中,因此免费)捕获音频引擎的输出,并使用 AUDCLNT_STREAMFLAGS_LOOPBACK 标志初始化音频客户端。这将为您提供一个连接到音频引擎输出的捕获流。

然后,您可以打包该音频并将其发送到另一台计算机,并使用您想要的任何音频渲染 API 进行渲染。

我不知道如何在 OSX 上做同样的事情:(。