gpt4 book ai didi

c# - 在 Windows 音频混音器(C# 或 C++)中显示 Audio Session

转载 作者:行者123 更新时间:2023-12-02 10:25:36 27 4
gpt4 key购买 nike

我试图弄清楚如何在音频混音器中出现单个音频流时获取它们,以将它们重新路由到聚合音频设备。为了我正在制作的程序的目的,我特别希望将它们保持为谨慎的流(如果它们被混合到 2 channel 混音,那将违背我想要实现的目的。)

E.X.:(因为我刚刚注册了这个帐户,我显然无法发布图片,所以这里是图片的链接)

windows audio mixer

在这方面,我希望将“系统声音”和“流客户端 Bootstrap ”作为谨慎的音频流路由到其他地方,同时也保持它们的原始目的地(基本上将音频复制到原始音频设备到另一个同时)。

我希望在 C# 或 C++ 中执行此操作。我仔细阅读了微软发布的音频 API,虽然有些事情看起来与我想要做的很接近,但没有任何事情能一针见血。我很感激任何帮助。谢谢。

最佳答案

可以使用 IAudioSessionManager2::GetSessionEnumerator 枚举 session 和 friend (示例 C++ 代码是 herethere )。标准的 Windows 音量混合器应用程序也在使用这个 API。

然而,API 无法访问数据流,您也不会拥有(无论它们是否被下混合,您肯定没有数据)。您也不能将流重新路由到另一台设备。不允许应用程序干扰那么深。您可以做的最好的事情是创建自己的设备,以交互方式将其选择为默认输出设备,然后接受来自通过该设备播放音频的应用程序的数据。

关于c# - 在 Windows 音频混音器(C# 或 C++)中显示 Audio Session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29952704/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com