最近因为一些缘故,需要在 Win7 上实现录屏和声音内录功能:前者记录计算机屏幕的内容变化,后者记录通过计算机扬声器或耳机线路发出的声音(Speaker 的声音)。在朋友圈中问了一圈,结合自己搜索之后,决定使用开源的 CamStudio 来录屏。
CamStudio 十分优秀,视频上支持多种区域方式(全屏、区域、固定大小、窗口),声音上支持计算机内录和从麦克风输入录制,甚至可选鼠标和键盘操作的录制。但在实际操作中 CamStudio 的内录功能无法正常进行,提示 WaveoutGetSelectControl() failed
的错误,并且官方似乎也没有定位问题所在,导致在多个版本中都存在这个错误(见官方论坛的讨论)。
Woedge 在上述讨论中给出了一个解决方案,帮助一些用户解决了问题。这个方案的关键步骤,是打开 Windows 系统录音设备中的禁用设备——立体声混响(Stereo Mix)功能,然后使用立体声混响将系统内部声音和麦克风声音混在一起,交付给 CamStudio 进行录制。
这个方案无疑帮很多用户解决了问题,但在许多 ThinkPad 机型上却不行。原因是部分 ThinkPad 安装的声卡并不支持 Stereo Mix 功能,故而上述关键步骤无法执行。
经过一番研究之后,决定使用 Virtual Audio Cable 来解决问题。