欢迎光临散文网 会员登陆 & 注册

关于个人对OBS采集卡录制的问题总结

2022-01-16 08:45 作者:white8844  | 我要投稿

最终解决方案:更新OBS版本的同时,更新显卡驱动可以解决大部分问题(包括编码过载)。对于老配置来说也一样成立。

如果不想折腾显卡驱动再往下看,也不能保证一定能解决问题。(反正遇到问题横竖都要折腾)

对于b站的大大们来说,我的电脑和采集卡配置应该算是低配。所以此处算是对低配电脑OBS采集卡录制的总结。

注:此处总结只针对录制影像,而没有做推流

硬件参数参考:

* 个人电脑硬件相关配置:笔记本电脑,Intel(R) Core(TM) i7-7700HQ +NVIDIA GeForce GTX 1050(外显就不说了,废,录制时没有用到)

这是个人目前使用的OBS版本

 下面是总结:

注:只针对intel+NVIDIA的总结。

  • 视频采集设备设定:

    (1)视频编码:一般情况下,预览使用MJPEG比YUYN更加流畅,但相对地录影清晰度会下降如果电脑带不动YUYN而录制卡顿甚至输出端也卡顿,则只能使用MJPEG.这里更正,并不是电脑带不动YUYN而是传输效率的问题,也就是电脑的USB接口的传输协议是不是USB3.0以上,这点对YUYN输出是否卡顿有直接关联。

    • 注意:如果笔记本电脑的USB接口不支持USB3.0以上不包含USB3.0)即使配置好的电脑使用YUYN编码不做任何处理,输出端预览也可能会卡顿的。在目前的实验测试结果来看,如果使用MJPEG编码不卡,则说明可以靠电脑配置来补。把录影的输出保存类型设定为“自定义FFmpeg”,也就是自定义转码,视频编码器使用适配YUYN的libx264(使用CPU运算),只要没有编码过载,进行录影时无论保存的录影本身还是预览都不会卡顿;但是这么做会加重CPU的负担,可能使其在90℃+的情况下持续工作(其实清灰换导热功率14W+的硅脂就可以了,即使CPU全速运转也就75℃-80℃一般不会再高了)。具体原理个人还没有研究透彻,猜测是传输缓存的某些机制影响。

    • 另外,关于自定义FFmpeg编码器的选择,如果要使用外显(例如本文是NVIDIA)编码(nevnc),则必须保证显卡驱动与OBS的版本适配,例如OBS27.1.0就需要版本为512.15左右的NVIDIA显卡驱动才能使用nevnc系列的编码器;而OBS23.0.0则是老的416.94左右的NVIDIA显卡驱动适配。

    (2)声音设定:

    • 不录制影像且追求简便的话,可以勾选“自定义音频设备”,此时音频输出模式建议使用输出桌面音频(DirectSound)。但是这样有很大的缺点

      • 录制影像音画不同步不,声音在画面之后。

      • 录制影像的声音非常大,且容易有卡塔响的噪声。

    • 要录制视频且期待录制的是采集的原声,则不建议使用“自定义音频设备”:

      • 此时建议在界面右下角的设定中禁用所有全局音频设备,然后在电脑系统的声音设定的录制选项卡中,进入采集卡对应的麦克风设备的属性设定,勾选侦听。这样就可以录制原声而不会有延迟。

      • 缺点是关闭OBS但没有断开采集卡的连接,采集中的声音依然持续输出,除非再次取消勾选侦听。

      • 对于进行过至少一次系统更新的win10用户,如果关闭计算机之后重启,就有可能需要取消上述勾选对应麦克风设备后重新勾选才能正常侦听。

    • 视频设定:

      • 基础:设定值决定视频流预览窗口的大小。

      • 输出:与录影的分辨率直接相关,设定是多少录影文件的分辨率就是多少。

      • 常用FPS值:与录影的帧率(FPS)直接相关,设定是多少录影文件的帧率就是多少。

        降低输出分辨率和FPS可以一定程度上减轻CPU负担从而解决编码过载问题,但是同时会降低录影的质量,解决编码过载问题建议从串流的设定入手,下一节“串流设定”会具体介绍。

      • 下图是适于采集输出1080p60视频流的设定。

视频设定参考
  • 串流设定重点):

    • 编码器:如果编码器没选好的话,高视频输出时录影就容易出现“编码过载”的问题导致当前录影帧率下降卡顿。外显卡不行的串流编码器只有设定为内显卡编码(核心显卡编码)。如果使用内显卡编码,如下的QuickSync H.264编码,在视频仍然保持1920×1080且60FPS的情况下就几乎不会因为过载的问题造成录影掉帧的问题了。←这里又研究了一下,虽然大部分时候是的确不会编码过载,但CPU使用率过高的情况下依然会被迫编码过载(CPU忙不过来了x)

      再次测试结果表明,串流的设定其实并不影响录影的质量,因此如果只进行录影的话,完全可以把串流设定改成非常低的设定。并且,串流编码器建议选择硬件编码,也就是NVIDIA NVENC或者QuickSync如下图:

只进行录影时串流设定并不影响录影质量

下面两张仅供参考,如果只录影的话不建议按下面两张图示的设定,而是建议按↑这张图的设定。

串流设定参考-外显卡NVIDIA NVENC串流
串流设定参考-内显卡QuickSync串流


  • 录影设定:

    • 输出设定:

      (1)输出模式为简单:适于不喜欢折腾的用户。

      • 比特率:其数值大小与录影质量成正比。按需调整,一般4000-6000Kbps空间足够,清晰度可接受。追求清晰度可以调高,但录制的录影所占空间会增大,且会增重编码器负担。

      • 编码器:外显不够优秀的用户建议使用QSV编码。外显比集显优秀更多的用户可以使用NVENC。不建议使用x264编码,因为录制的录影很可能会卡帧,会极大影响录影的观看效果(目前没搞清具体原因,推测是CPU负荷过重)。

        勾选启用高级编码器预设

        • QSV编码器预设:quality或者balanced按需选择。其中quality更偏重质量,而balanced是兼顾质量和速度,但录制质量没有quality好。特别是使用MJPEG编码的用户,在不会卡顿的情况下,建议使用quality。

        • NVENC编码器预设:偏重质量还是延迟,按需选择。

      • 录影质量:按需选择,1080p比特率一般在4000kbps到8000kbps,电脑配置不够的话可尝试降低录影比特率。

      • 其余设定:按需选择或更改。可以默认。

            (2)输出模式为高级:适于愿意折腾的用户。

      • 类型“标准”的总结:

        • 编码器:建议使用QuackSync H.264,外显比集显优秀更多的用户可以使用NVIDIA NVENC(new)。以下只针对选用QuackSync H.264编码作总结:

        • 目标使用:与“简单”相同,quality或者balanced按需选择。

        • 速率控制:建议使用ICQ或者LA_ICQ。LA_ICQ相比ICQ多了前置缓存,理论上LA_ICQ比ICQ更加优秀。

          • ICQ质量:其数值与质量成反比。数值越高,录影码率-质量越低,占存储空间越小,反之录影码率-质量越高占存储空间越大。建议值为20-30之间

          • 延迟:建议是normal,除端非延迟很高选择low,但个人感觉用处不大。

      • “类型”为“自定义输出(FFmpeg)”:

        • 输出类型:录影就是“输出到文件”。

        • 容器格式:对录影进行剪辑或上传到社交网络的话建议设定为mp4。

        • 视频比特率:自行定义,值越高录影画质越好。

        • 视频编码器:如文章开头所说,设定为libx264编码为CPU编码,录制流畅但增重CPU负担。外显优秀的用户可以尝试使用其他编码。

      • 关键帧(I帧):需要进行录影剪辑的用户建议设为2,如果不需要的话可以是默认值。

      • 最大B帧:适量的B帧有利于录影的压缩来减小所占的存储空间,不过对存储空间没有太大忧虑的用户建议最大B帧设定为0,因为B帧会加大CPU的负担造成OBS录影丢帧或者卡顿。

    • 高级设定:

      • 颜色格式:建议为RGB.

      • 色彩空间:sRGB.

      • 其余设定可以默认。

  • 其余设定目前没有研究过,都是默认。

  • 其他OBS常见问题:

    • 编码过载:

      • 设定要求过高会导致CPU占用率过高,按OBS官方的说法需要降低设定。不过在相同设定下,如果需要在电脑上输出采集的视频流(用电脑连接采集卡玩游戏的话一般都需要的),如果不介意荧幕大小,建议把预览设为:“缩放至窗口大小”,这样就不会因为渲染流太大导致CPU过多占用(此举并不影响录影视频流的实际分辨率大小)。

      • 经实践,这个问题也与CPU温度有关,温度过高触发CPU自我保护降频也会导致编码过载,因此建议养成定时对电脑进行清灰和定时更换导热功率较高的硅脂(安全起见不建议使用会导电的液金硅脂)。

      • 正在运行的应用程序过多也会导致CPU占用率过高,此处建议在使用OBS进行录影时关闭不需要的应用程序特别是杀毒软件。


    以上总结仅供参考,还请具体情况具体分析。


    参考资料:

    Intel 核显几种速率控制方式的比较:https://www.bilibili.com/read/cv3584134

    OBSH.264编码下预设 profile B帧参数及影响:https://www.bilibili.com/read/cv9056690

    OBS的调教(?)经验记录(如何降低丢帧率):https://www.bilibili.com/read/cv6849770

    OBS录制软件音画延迟/不同步解决方案:https://www.bilibili.com/read/cv11551498


    如果大家有什么建议的话,欢迎在评论区留言喔!(*╹▽╹*)非常感谢!


关于个人对OBS采集卡录制的问题总结的评论 (共 条)

分享到微博请遵守国家法律