update:OBS 30.0版本已加入录制单个窗口的功能(source选择“应用音频采集”),只不过不是所有程序都兼容,可以先尝试这一功能,如果不起作用,再考虑以下方法。
以下为原文。
什么意思呢,就是在录屏中只录入一个程序或窗口的画面和声音,听起来很简单,但是实现这一目标却花了不少时间,这里记录一下给有需要的同学参考。
为什么要录单窗口?
因为有时想要录制视频会议却还要做其他事,不能一直把窗口放在前台,或者录制游戏却不想录进去语音通话。
遇到了什么问题?
对,录屏软件有很多,但是我这个人比较挑剔,首先不想用收费软件,其次不想用国产商业软件(隐私考虑)。当然即使考虑这些,优秀的免费录屏软件也蛮多的,我也试了不少,但都不能完全满足需求,例如:
- Nvidia ShadowPlay:Geforce Experience附带的功能,需要N卡,用法和Xbox Game Bar差不多,在设置中开启后按Alt+F9开启录屏,并且切换窗口不会停止,但是问题在于无法选择音频输入源,也就是说录制过程中果如你在看视频或者语音通话,这些声音也会被录入(麦克风声音默认也会被录入,不过可以关闭)。
- ShareX:免费开源的程序,截图功能很强大,但是录屏太简单了,只有矩形区域一个选项。
- Captura:免费开源的程序,功能比较强大,可以选择窗口、显示器等,也可以选择音频来源,但是问题也不少,一是选择窗口实际选择的是矩形区域,也就是说不能录制后台窗口,二是内录过程中(虚拟声卡)如果切换了输出源(例如蓝牙耳机没电了),那么之后就没声音了,三是容易崩溃,而且崩溃会导致文件损坏。
着重吐槽一下Windows自带的Xbox Game bar,设计是方便,但是bug多到完全不可用,我已经卸载:
- 经常无法启动,按快捷键没反应,或者报错,或者过几分钟才开始录制,需要在任务管理器里结束进程然后重开。
- 主界面记不住窗口布局,有时窗口关不掉。
- 资源窗口绝大部分时间不会刷新,帧率显示--,即使偶尔能工作,GPU也永远是100%。
- 切换窗口时录制可能中断,论坛有人说是特性并非bug,但是哪有“特性”是随机触发的?
- 无法添加和删除游戏,复选框勾不上,游戏列表里永远都有微信,重装都解决不了。
- 录制其他程序时有时会录成微信。
- 游戏回放录制的视频音画不同步,声音领先画面20秒左右。
真特么不愧是阿三作品!
所以解决方法是?
需要两个程序。
VoiceMeeter,用于音频中转,也就是把程序的声音发送给它,它再转发给其他输出设备。题外话,这个公司的音频软件挺强大的,而且都是免费+捐赠的形式,少见的良心公司了,它还有一个更强大的混音软件VoiceMeeter Banana,但是这里用不到。
OBS Studio,非常强大的开源录制和串流软件,用于录屏。
操作方法如下:
- VoiceMeeter安装后会变成默认输出设备,我们需要在系统设置中把默认输出设备改回去,因为除了要录制的程序之外,其他程序我们只想听声音,不想录进去。
- 在音量合成器中把你希望录制的程序的音频输出设备改成VoiceMeeter Input (VB-Audio VoiceMeeter VAIO),这个设置要Windows 10 build 17093以上版本才有,也就是正式版1803版本以上,并且需要程序在运行才能看到,不过不用担心,这个设置是会保存的,即使退出程序重新运行,依然会使用上次的输出设备。
- 打开VoiceMeeter,左边是输入,右边是输出,在右上角的A1、A2下拉菜单中选择输出设备,最多可以选择两个,也就是两个设备可以同时输出,不过我这种需求选一个A1就够了,就选择你正在使用的耳机或扬声器。至于WDM、KS、MME我也不太了解,似乎WDM和KS的延时比较低,但是我这里选了MME,因为MME可以配合EarTrumpet调节选定程序的音量(调节VoiceMeeter的音量即可),而WDM和KS的音量只能跟全局走。
- 打开OBS Studio,新建场景,新建来源,我这里选择的是窗口采集,选择想要录制的窗口,如果你不想录麦克风声音的话就把混音器里的麦克风关掉,然后混音器-桌面音频-属性,选择设备为VoiceMeeter Input (VB-Audio VoiceMeeter VAIO),其他设置根据需求修改。
- 打开程序,使用OBS Studio正常录制即可。
这样设置的结果就是,指定程序的声音会先经过VoiceMeeter,然后再通过指定设备播放,其他程序直接使用默认设备播放,OBS Studio只采集经过VoiceMeeter的音频,所以只会录入指定程序的声音,你听到的声音虽然是通过两条路径分别过来的,但实际体验没有影响。
注:VoiceMeeter需要在运行中才能实现这个效果,如果常用建议设置开机自启动。
优点和问题
优点:
- 只录制指定程序的视频和音频,而不会受到同时打开的其他窗口、视频、语音等的影响。如果你需要同时录制多个程序的声音,分别设置输出设备即可。
- 受益于OBS的强大功能,你可以选择录制的分辨率、码率等,这样可以使用高分辨率玩游戏,但录制中等分辨率的录像,以节省硬盘空间。当然OBS的功能不止这些,可以自己发挥。
- 可以任意切换窗口,不会终止录制,不会被覆盖,唯一的要求是不能最小化,否则画面会定住。
- 可以任意调节音量、静音、换耳机等,不会影响录像里的声音。
问题:
- VoiceMeeter不能设置使用默认设备,所以每次重新连接或者切换输出设备时都需要重新选择,即使显示的输出设备正确也需要重新点一遍,设备断开后也需要手动删除,否则会没有声音。
- 因为声音多经过了一道VoiceMeeter,我不确定音质会不会有损失,我使用某个耳机时,打开VoiceMeeter后会有一点底噪,其他耳机没有,不确定是什么原因。
文章评论