代码之家  ›  专栏  ›  技术社区  ›  Paul Alexander

c#/。NET-录制正在播放的当前音频

  •  0
  • Paul Alexander  · 技术社区  · 7 年前

    c#/中有什么方法吗。录制当前正在播放的音频?我在网上搜索了很多,但唯一能找到的结果是用麦克风录音。

    谢谢

    2 回复  |  直到 7 年前
        1
  •  2
  •   Roman Ryltsov    7 年前

    1. 硬件环回设备-虚拟“立体声混合”音频设备,作为常规音频捕获设备,同时生成通过系统默认音频输出设备播放的混合音频馈送的副本。由于这种设备显示为真实的音频输入设备,您可以使用标准API、库甚至现有应用程序从这种设备进行录制。

    2. 对虚拟环回设备的编程访问,就像它是类似麦克风的设备一样。背景上的API将复制播放的音频内容,并使其在播放时可以读回。好消息是,您可以访问您感兴趣的设备的混合音频源。

    这两个选项在中进行了详细描述 Loopback Recording 关于MSDN的文章,可通过标准音频API,特别是WASAPI获得。

    对于选项1,您将发现关于StackOverflow的许多问题,对于另一个选项,关键字是 AUDCLNT_STREAMFLAGS_LOOPBACK .

        2
  •  -1
  •   Scornwell    7 年前

    能够从另一个应用程序接收数据的唯一方法是,开发人员通常通过一些SDK、API或其他方式提供访问点。否则,应用程序代码将无法从其他应用程序接收字节。

    查看您试图从中获取声音的应用程序的开发人员是否提供了API或SDK。