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

  1. 关于如何获取音频信号有什么想法吗?
  2. 在没有第三方插件的情况下,最有效的音频流传输方式是什么?如果有开源解决方案,我会很感兴趣。

谢谢!

克里斯

有帮助吗?

解决方案

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

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

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

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top