【问题标题】:Is it possible to capture the rendering audio session from another process?是否可以从另一个进程捕获渲染音频会话?
【发布时间】:2012-10-17 22:13:05
【问题描述】:

我正在第一次深入了解 Windows 的 WASAPI 系统,但我不知道我想要的是否可以通过 Windows API 实现。

我正在尝试编写程序来录制来自各种程序的声音并将每个程序分解为单独的录制曲目/音频文件。从我所做的研究中,我知道我需要记录的单元是被渲染到端点的各种audio sessions,而正常的记录方式是采用渲染端点并执行环回。但是,从我目前在 MSDN 中阅读的内容来看,我唯一能与会话进行的交互是通过 IAudioSessionControl,这并没有为我提供获取会话流副本的方法。

我是否遗漏了一些允许我使用 WASAPI(或其他一些 Windows API)执行此操作并在它们混合在一起形成端点之前获取单个会话(或单个流)的东西,或者这是一个不可实现的目标?

【问题讨论】:

    标签: windows audio windows-7 audio-recording wasapi


    【解决方案1】:

    混合发生在 API (WASAPI) 内部,您无权访问其他音频客户端的缓冲区,尤其是。它们首先不存在于当前流程的上下文中。如果所讨论的任务允许像这样的肮脏技巧,也许最好的(不是那么好,但没有更好的选择)方法是挂钩 API 调用并在通往 WASAPI 的途中拦截数据。

    【讨论】:

      猜你喜欢
      • 2017-01-08
      • 2020-03-11
      • 1970-01-01
      • 1970-01-01
      • 2010-10-09
      • 1970-01-01
      • 2012-06-09
      • 1970-01-01
      • 2011-03-01
      相关资源
      最近更新 更多