详情为什么我想这样做是为了帮助你理解我的困境:
我很高兴能够将我的录音设备更改为Skype通话中的立体声混音,以便人们可以听到我的音频。这是分享音乐/其他音频的有用工具。
我真的很想把它编成一个音板程序,所以我可以按下一个按钮让设备切换到立体声混音,播放声音,然后切换回来。
很简单,但我找不到使用程序更改录音设备的方法。
这个问题正是我想要回答的问题,但事实并非如此。 How can I write software to play sound clips routed into the recording device?
另一个线程(Select recording device in C++ (Windows))告诉我如何找出我有多少个录音设备,但没有实际告诉我如何更改它们。
可接受的答案是,如果不绕过Windows的安全性,就没有简单的方法可以做到这一点。
答案 0 :(得分:0)
Skype等应用程序绑定到特定的音频设备并将其用于录制/播放目的。例如,如果Skype用户选择立体声混音作为音频设置下的麦克风设备,那么任何其他应用程序是否能够将其切换为其他应用程序?它甚至不是Windows安全性,它不仅仅是 - 你会试图干扰应用程序和使用中的API。
实现这一点的或多或少的干净方式是您完全控制的虚拟设备,特别是您从那里向/向真实设备转发数据。与Stereo Mix类似,想象一下在Skype上选择的“My Switchable Mic”设备,Skype正在从中获取数据。这已经内置在Skype中,只要设备实现遵循标准含义,Skype就能从那里获取数据。从那里你可以自由地从另一个音频源进行实际捕获,从网络接收,混合,合成波形。是的,您也可以动态切换底层设备 - 这一切都在您的控制之下。这样就可以了。
标准API不允许您欺骗应用程序并伪造音频设备和数据。