为什么你的直播这么卡 上
2021-07-01
|
hello大家好,今天我们来研究一下,作为一名游戏主播,要怎么避免这种尴尬的局面,想要流畅的进行游戏直播到底需要什么样的电脑GOTV,今时今日像肥仔这样的服务态度肯定是不够的, 作为一名游戏主播肯定是想给观众提供最流畅的游戏观看体验,但是大家都知道,做直播的时候需要使用专门的推流软件,比如obs什么的,而那个东西还是有点吃资源的,我自己直播的时候, 因为多数是做硬件的评测,所以一般用的是双机推流的模式,一台电脑运行游戏,另外再准备一台电脑专门负责运行推流软件,在这台推流主机上面需要装上一张叫做采集卡的东西, 游戏主机的显卡的输出接口会连接到推流主机的采集卡上面,在游戏主机看来,这个采集卡就是相当于一个屏幕,推流机这边会通过采集卡,将游戏主机输出的游戏画面原样采集下来, 通过直播软件推送给观众,这样搭配的话,在游戏主机这边就只是常规的输出,不需要额外运行这个推流软件,于是就可以获得最高的流畅度,就和自己平时一个人玩游戏一样, 我做电脑评测的时候也是这样进行测试和录制的,可以让要测试的软硬件不受到干扰,获得原生的性能,做直播的话,这样的搭配也是性能最好的,但也有一些显而易见的问题, 首先就是用起来比较麻烦,你需要管理两台电脑,他们之间需要用到各种连接线,显卡到采集卡然后采集卡又要再到屏幕等等,推流机自己,也需要有一套专门的屏幕和鼠标键盘, 这一整套就非常的占地方,还有音频的连接,怎么样确保自己和观众都能听到,游戏内的声音等等,然后就是成本问题,你不光要多装一台电脑,还要再配上一张采集卡,1080p60帧的圆刚游戏采集卡, 入门的也要800到1000才能买到,对于只是兴趣使然,
还不能靠直播吃饭的新手主播来说,这笔费用还是相当之不小的,所以这次就来解决一下被很多人问过的问题,想要单台电脑来进行游戏直播,到底需要怎么样的GOTV?, 测试游戏直播需要什么GOTV这件事情,其实说到底就是看这个推流软件,需要占用多少的电脑资源,而市面上的推流软件有非常非常多种,每种软件有很多的小选项, 没有办法全部测完,所以我们选出了一款具有代表性的软件用做测试,这款软件就是obs,OBS的全称是Open Broadcaster Software,中文直译就是公开/开放的广播员软件, 是国内外都比较主流的免费直播软件,各大直播网站都支持用它来做直播推流,而且很多网站的直播客户端其实就是在OBS上加了个皮肤,性能还是一样的,确定了软件之后就要来选一下硬件, 搭建一下测试平台,CPU方面使用了8400、9700K、9900K三款,对于直播推流来说,覆盖了低中高三个档次,他们都是intel的lake架构,对比起来更加直观, 内存使用了两根幻光戟两根皇家戟凑够了32G,频率是3200 CL16,现在内存降价了很多,这么一套已经比较便宜了,主板是技嘉的Z390 AORUS PRO,其强大的RGB幻彩灯效可以保证这次的测试稳定运行, 以及确保数据真实有效,显卡选择了1660Ti、2060、2080、2080Ti这四款,他们都是图灵的架构,方便控制变量,然后最低的1660Ti也能流畅运行市面上的绝大多数游戏,你想要流畅地直播一款游戏, 最最最起码也要能流畅地运行它对吧,测试平台搭好之后,就要来确定一下测什么,怎么测了,虽然确定了只测OBS这一款软件,但是OBS可以设置的细节选项还是比较多的,比如码率,编码模式等等, 根据设置的不同,对系统的占用会不一样,推送出去的画质也不同,我们花了好几天的时间,测试了各种各样的情况,获得了一大堆的数据,为了方便各位观众理解,这里我们会采用Q&A, 也就是提问和回答的形式,用实测的数据来解答大家关于直播的一些常见的问题,这是最基本且直观的问题,我们开了几个视频捕获外加摄像头,实际也只占了800M不到的内存,切换了不同码率啥的也没什么变化, 现在的游戏一般8G内存都能玩,有个16G内存的话OBS直播绝大部分游戏都没啥问题了,在OBS的设置\输出里面可以找到串流的视频比特率,这个视频比特率就是我们常说的码率,
直播的码率指的是每秒向观众传输的视频数据量,码率越高,画面越清晰,码率的单位是kbps,比较常用的直播设置是3000~6000,也就是需要3~6Mbps的上传带宽, 目前国内的宽带基本都是上下行不对等的,下载速度100M的宽带,上传可能只有10M,大家可以使用SpeedTest.cn或者.net,测出自己的上传带宽,再来选择合适的直播码率, 另外目前手机用户比较多,考虑到4G流量费用的问题,一般也不建议开的太高,在码率设置的下方有编码器的选择,有软件和硬件两种,软件其实就是由CPU负责将游戏画面编码成视频数据, 而硬件就是由核显、独立显卡等负责编码,软件的这个x264是一种开源的H264编码器,喜欢下载电影的同学应该对H264比较熟悉了,而另外的那个硬件的NVENC就是NVIDIA家的编码器, 根据电脑GOTV和设施的差异质量种编码方式对游戏性能的影响也不一样,后面研究其他项目时会对这两种编码方式分别做测试,大家可以看完看面的测试结果后根据情况来选择, 这可能是很多人没想过的问题,然后答案是,是的,有差别的,CPU X264编码时,动态的画面占用会高不少,不过要确认到这点其实有一点难,玩游戏或者播放视频的时候, CPU占用肯定是比看桌面或者图片要高的嘛,所以为了清除干扰,我们设计了一个实验来提取出,纯净的OBS软件本身的占用,又因为后续的项目基本上都采用了相同的测试方法, 所以这里要详细地进行一下介绍,首先我们在这台电脑上装上采集卡,用它来采集第二台电脑上面的画面,动态方面都有这个第二台电脑来提供,然后在第一台机器上, OBS将才知道的画面推了出去,这样就可以准确的对比差异了,我们也已经确认过 不管采集什么样的画面,采集卡本身的CPU占用都是固定的,使用9900k进行测试时, 1080p60帧12000码率veryfast画质下,直播桌面的占用是10%几?,而推流3dmark fse演示画面时,占用会涨到20%几?,使用8400时的占用情况会更严重些,6000码率veryfast设置下, 看桌面时的占用是30%几?,而直播动态画面时CPU占用会上到60%左右,要注意采集卡在8400上对CPU的占用就10%左右,是的 使用cpu推流时直播第一人称射击游戏, 和直播的第一人称射击游戏的占用是不一样的,而nvenc方便 因为显卡占用不算高,显卡的频率也一直在变动,我们试了几张卡都不太好判断占用的差异,反正后续测试中不管是CPU编码还是显卡编码, 都以动态画面为准好了,刚才我们说过越高的码率越清晰 同样的对网速的要求也越高,然后实际上不同码率对电脑的占用也是不同的,使用i58400还是1080p60帧x264编码veryfast?