Dit is het eerste deel van een onderzoek naar gamestreaming, een onderwerp waar we eerder om hadden gevraagd - vooral na het bestuderen van CPU's - maar met opzet weggelaten omdat het onderzoeken van al zijn gewaagde details vrij complex is. Flow met alles in deze recensies.

In de komende weken zullen we een aantal artikelen wijden aan het streamen van games en een definitief antwoord geven op wat voor soort setup het beste is en welke kwaliteitsinstellingen het meest logisch zijn. Het huidige onderzoek richt zich op instellingen voor streamkwaliteit, we willen weten welke coderingsinstellingen de beste balans bieden tussen kwaliteit en prestaties, en hoe elk van de verschillende populaire coderingsmodi qua resultaten verschillen.

Een van de belangrijkste dingen die we eerst willen begrijpen: is softwarecodering op de CPU of hardwareversnelde codering op de GPU, de betere benadering.

Voordat we op de conclusies ingaan, een beetje achtergrondinformatie over ons testplatform ... een van de belangrijkste dingen die we eerst willen begrijpen, is of softwarecodering in de CPU of hardwareversnelde codering in de GPU een betere benadering is. Dit is een van de echt belangrijke gevechten, want als GPU-codering de juiste keuze is, wordt de CPU die je nodig hebt voor streaming grotendeels onbelangrijk, terwijl als de CPU-codering beter is, je processorkeuze natuurlijk een belangrijke factor wordt op kwaliteitsniveau. , niet alleen wat betreft streamingconsistentie, maar ook uw spelprestaties.

Vooral de afgelopen maanden is GPU-codering interessanter geworden omdat Nvidia zijn hardware-coderingsengine heeft geüpdatet in de nieuwe GPU-architectuur Turing.







De meeste aandachtspunten HEVC-compatibiliteit en de nieuwe engine van Turing, die momenteel prestaties heeft die niet echt belangrijk zijn voor het streamen van games, zal naar verwachting 15% betere H.264-kwaliteit leveren in vergelijking met de oudere engine van Pascal (GTX 10-serie). Dit is iets waar we naar zullen kijken en zien hoe Turing zich opstapelde tegen x264-softwarecodering.

Aan de GPU-kant, RTX 2080 Voor Turing-codering, Titan X Pascal We zullen ook zien hoe AMD samenkomt met de Vega 64 en voor Pascal-codering.




Het tweede deel van het onderzoek betreft het coderen van software met x264 met behulp van verschillende presets. We laten een CPU-vergelijking met softwarecodering achter voor een apart artikel, in dit artikel maken we ons meer zorgen over hoe elke preset de prestaties en kwaliteit beïnvloedt.




Alle testen Core i7-8700K overklokt Tot 4,9 GHz en 16 GB DDR4-3000-geheugen, ons aanbevolen platform voor high-end gaming. In de toekomst zullen we zien hoe de 9900K presteert met AMD Ryzen CPU's.




Om deze opname te maken, is de nieuwste versie van OBS ingesteld om op te nemen met 1080p 60 FPS met een constante bitsnelheid van 6000 kbps. Dit zijn de aanbevolen maximale kwaliteitsinstellingen. ZenuwtrekkingAls je alleen games speelt voor andere doeleinden, raden we je aan een hogere bitrate te gebruiken, maar als je geen partner bent om naar Twitch te streamen, moet je deze op 6 Mbps of lager houden.

We testen het hier met twee spellen, Assassin’in Creed Odyssey dit is een behoorlijk hoge GPU en CPU-veeleisende header, iets waar CPU-codering mee te maken heeft; en Forza Horizon 4Dit vereist ook minder CPU, maar het is een snelle titel waarbij codering met een lage bitsnelheid problemen kan opleveren. Beide titels bieden een iets slechter scenario voor het streamen van gameplay op verschillende en unieke manieren.

We beginnen met GPU-codering, aangezien dit al lang bekend staat als behoorlijk eng. De sleutel hier is om te zien hoe Turing iets verbetert naast CPU-coderingsopties in vergelijking met eerdere GPU-coderingsaanbiedingen die vrijwel niet beschikbaar zijn.




Voor Nvidia-kaarten hebben we de NVENC-optie in OBS gebruikt en deze ingesteld op het gebruik van de vooraf ingestelde hoge kwaliteit op 6 Mbps. Er zijn nog een paar vooraf ingestelde opties, maar Hoge kwaliteit produceert de hoogste kwaliteit, zoals de naam suggereert. We hebben een aantal coderingsopties geprobeerd voor AMD's Vega 64, zowel wat betreft preset als bitrate, zo ongelukkig zoals je zult zien in de vergelijkingen voor een korte tijd.

Door de NVENC-applicaties van Turing en Pascal naast elkaar te zetten, is er bij 6 Mbps niet veel verschil. Beiden hebben last van ernstige macroblokkerende effecten en over het algemeen ontbreekt het aan details in de afbeelding. Vooral in Forza Horizon 4 ziet blokkering er op de weg erg opvallend en eng uit. De encoder van Turing is misschien iets scherper en in sommige gevallen minder blokkerig, maar beide zijn rotzooi. Als je games wilt streamen, is dit geen kwaliteit die indruk zal maken op je kijkers.

De encoder van AMD voorkomt dat de encoder volledig krimpt wanneer uw GPU-gebruik de 100% nadert, en het kan niet meer dan ongeveer 1 frame per seconde genereren, wat geen probleem is met Nvidia-kaarten.

Ik kon de encoder in Forza Horizon 4 draaien met een ingeschakelde framebegrenzer die het GPU-gebruik tot ongeveer 60% reduceert, maar zelfs met de 'Quality'-coderingsvoorinstelling is de kwaliteit van de door Vega 64 geproduceerde kaarten nog slechter dan die van Nvidia's Pascal.

Laten we eens kijken hoe Nvidia's NVENC zich verhoudt tot de x264-software die op de CPU is gecodeerd, terwijl de encoder van AMD vanaf het begin uitgesloten was. In de langzamere Assassin's Creed Odyssey-benchmark is NVENC merkbaar slechter dan de zeer snelle preset van x264, vooral voor fijne details, zelfs als de preset van hoge kwaliteit beperkt is tot slechts 6 Mbps.

De zeer snelle x264 is niet verrassend met enige rek, maar het niveau van blokkering en gebrek aan detail in de NVENC-app van Turing is in vergelijking verschrikkelijk.

In de sneller bewegende Forza Horizon 4-benchmark presteert Turing's NVENC op sommige gebieden veel sneller dan x264, NVENC blokkeert nog steeds iets slechter, maar te snel bewegen heeft echt te maken met fijne details. Met dit actieniveau is NVENC ongeveer gelijk aan de "snellere" preset van x264. Merk echter op dat de “snelle” preset van de x264 significant beter is dan NVENC in fast motion en volledig rookt als er slow motion of geen beweging is.

Deze resultaten kunnen enigszins verrassend zijn wanneer Nvidia beweert dat de nieuwe Turing NVENC-engine voor H.264-codering rond de x264-snelcodering ligt, of iets beter bij 6000 Kbps voor 1080p 60 FPS-streaming. Van wat ik heb gezien, was softwarecodering echter veel beter, vooral in Assassin's Creed Odyssey.

Als we alleen kijken naar voorinstellingen voor softwarematige x264-codering, zijn er merkbare verschillen tussen zeer snel, sneller, snel en medium. Het langzaam bewegende Assassin's Creed Odyssey - en het negeren van netprestatieproblemen met sommige presets op dit moment - is erg snel en sneller, met veel vegen, blokkering in sommige gebieden en een gebrek aan fijne details, het biedt geen hoog kwaliteitsniveau, vooral niet voor bewegende objecten.

Deze twee presets zouden eigenlijk moeten worden gereserveerd voor degenen die gewoon willekeurig willen streamen, omdat de presentatie niet geweldig is wanneer deze beperkt is tot 6 Mbps.

De snelle voorinstelling is het minimum dat ik zou overwegen te gebruiken voor een hoogwaardige gamestream, vooral als je de beeldkwaliteit voor je publiek op prijs stelt. Het zorgt voor een snellere merkbare sprong in kwaliteit tot het punt waarop wazige fijne details nu worden gedefinieerd.

Medium is weer een merkbare verbetering, maar de kloof tussen snel en medium is kleiner dan de kloof tussen snel en snel. En zoals we straks zullen zien, veel succes met het gebruik van de medium preset op het systeem waarop de game draait. Ik heb ook de langzame preset gecontroleerd, maar op dit punt verminderen we de bounces voor een grote prestatiehit.

Voor snellere actie in Forza Horizon 4, zou ik opnieuw de zeer snelle preset onmiddellijk afwijzen omdat deze slechter is dan NVENC voor dit soort inhoud. Helaas verhindert de strakke bitrate-limiet van 6000 kbps dat presets echt recht doen aan het bronmateriaal, maar nogmaals, de media komen het dichtst in de buurt en zorgen voor een verbetering ten opzichte van het snelle.

De snellere preset ziet er vreselijk uit, dus voor dit soort inhoud raad ik snel aan als het absolute minimum, ik raad echt een medium met een hogere bitsnelheid aan, maar hey, Twitch heeft de limiet ingesteld op 6 Mbps, dus in principe kan het het beste doen.

Opbrengst

Maar beeldkwaliteit is natuurlijk slechts een deel van de vergelijking, het andere is de prestatie, en als je je game speelt vanaf de computer waarop je het speelt, is het voldoende dat zowel je game-ervaring als streaming-prestaties belangrijk zijn.

We beginnen met het bekijken van de GPU-codering hier en kijken hoe dit de prestaties beïnvloedt.

Het inschakelen van de NVENC-engine van Pascal of Turing zal de framesnelheid van de game met ongeveer 10 tot 20% beïnvloeden, afhankelijk van de game, wat betekent dat je een daling van de framesnelheid van 10% tot 20% zult zien bij het fotograferen met NVENC. heeft het spel nooit overwonnen. Hoe beperkter de game, hoe groter de impact van NVENC, dus Forza Horizon 4 wordt meer beïnvloed door de zware CPU-gebruiker op Assassin's Creed Odyssey.

Maar het goede nieuws is dat terwijl NVENC de game met een lagere framesnelheid laat draaien, zelfs als de game 100% van de GPU gebruikt, de stream zelf uitstekende prestaties zal leveren zonder verloren frames. De coderingsengine van AMD heeft nauwelijks invloed op de framesnelheid van de game, maar zakt ongeveer 90% van de frames wanneer de GPU zwaar wordt gebruikt, waardoor deze onbruikbaar wordt, zoals we eerder hebben besproken.

De prestaties van de softwarecodering zijn afhankelijk van het type game dat u speelt. In het geval van Assassin's Creed Odyssey, dat zwaar zowel de CPU als de GPU gebruikt, zal het streamen met behulp van de CPU een merkbaar effect hebben op de framesnelheid en zullen de voorinstellingen voor codering van hoge kwaliteit moeilijk bij te houden zijn.

Terwijl de Core i7-8700K en RTX 2080 Odyssey speelden met behulp van onze aangepaste kwaliteitsvoorinstelling, konden we het spel alleen coderen zonder frame drops in de stream-uitvoer met behulp van de x264 ultrasnelle preset. De zeer snelle X264-codering verminderde de framesnelheid met 17%, wat een grotere reductie was dan bij gebruik van NVENC. Zeer snelle codering voor dit type game is visueel beter dan NVENC, dus de prestatiehit is het waard.

Maar zelfs het overschakelen naar de "snellere" preset zorgt voor frame drops in de stream output. Met een frame drop rate van 8,5% is de output moeilijk te passen en te volgen. Ondertussen zijn de spelprestaties gedaald van gemiddeld 90 FPS naar 63 FPS, iets meer dan 30 FPS met 1% lager. Het is duidelijk dat deze preset het systeem overweldigt. En het wordt erger met snelle en gemiddelde droppercentages van respectievelijk 62 en 82 procent. Interessant is dat de spelprestaties in deze presets iets beter zijn dan in de snellere, maar ik vermoed dat dit de game wat meer CPU-ruimte geeft om de game te renderen vanwege de overweldigende codec.

Een strategie om je prestaties te verbeteren, is misschien om het spel te beperken tot 60 FPS, aangezien degenen die je stream bekijken beperkt zijn tot 60 FPS. Maar met deze hoes op zijn plaats, is het verhaal niet veel beter: de snellere preset ziet nog steeds 9% van alle frames vallen, terwijl de snellere preset gewoon streeft zonder frame drop, maar 1% van de game is een lage 40 FPS. De enige optie voor snel gebruik zou zijn om de visuele kwaliteit te verlagen en het opnieuw te proberen, maar voor dit artikel waren we niet bijzonder geïnteresseerd in het optimaliseren van de Assassin's Creed voor streaming met onze hardware.

Aangezien 8700K in dit onderwerp beperkt is tot zeer snelle streaming of GPU-streaming, zal het interessant zijn om te zien hoe andere CPU's zich opstapelen in deel 2 van dit onderzoek. Maar zeker de 8700K - een high-end, populaire gaming-CPU - is het typische scenario dat we hier hebben laten zien voor het posten in een CPU- en GPU-intensieve titel. Degenen met processors op een lager niveau, en vooral degenen met Intel-processors met een lagere kern, raken deze zeer snelle limiet vaker.

Wat betreft Forza Horizon 4, dat veel minder veeleisend is van de CPU, het is een interessant geval omdat de softwarecodering in de CPU eigenlijk hogere spelprestaties biedt dan hardwareversnelde GPU-codering. Dit komt omdat er voldoende CPU-ruimte is om in de CPU te coderen zonder in te gaan op GPU-prestaties.

De ultrasnelle voorinstelling van x264 had een impact van 6% op de spelprestaties, kijkend naar de laagste niveaus van 6%, maar het verschil tussen zeer snel en snel was slechts een daling van 5% ondanks de enorme toename van het CPU-vermogen dat nodig is om te coderen met de snelle voorinstelling.

Aan de streamingzijde zagen we geen frame drops met zeer snelle en snellere presets, maar ik zag al snel een frame drop rate van 12% voor de gecodeerde stream. Dit veroorzaakte onaangenaam stotteren in de beek. Aangezien we het spel echter draaien met ongeveer 120 FPS, kunnen we gemakkelijk een 60 FPS-limiet toepassen om de belasting van de CPU van het spel te verminderen. Met deze dop op zijn plaats, wordt de snelle preset beschikbaar zonder frame-uitval. De cover opent ook de medium preset coderingsoptie, maar met de 8700K ontdekten we dat ongeveer 2% van alle frames wegviel terwijl de 60 FPS-cover nog op zijn plaats zat, wat niet ideaal is. Als we wilden overschakelen naar mediumcodering, zouden we moeten kijken naar het verminderen van de CPU-belasting van het spel met kwaliteitsinstellingen.

Conclusie (tot aflevering 2 van deze serie)

Nu al deze tests zijn uitgevoerd, zijn hier een paar interessante afhaalrestaurants. De belangrijkste bevinding voor GPU-kopers op dit moment is dat Turing's GPU-coderingsengine voor H.264 niet significant verbeterd is in vergelijking met Pascal, en dat GPU-codering niet absoluut een optie is die geschikt is voor streaming.

De enige keer dat ik het gebruik van NVENC kan aanbevelen, zijn snelle, bewegende games. Minder mobiele games moeten worden gecodeerd met de ultrasnelle x264-preset in plaats van NVENC, en kunnen op de meeste streamingcomputers zeer snel worden verkregen.

Op het gebied van AMD vergen zelfs coderingsengines veel aandacht. Het werkt niet met hoge GPU-belastingen en als dat het geval is, is de uitvoerkwaliteit verschrikkelijk.

CPU-codering is een moeilijker verhaal, aangezien het niveau van x264-codering dat u kunt beheren afhangt van uw CPU en vooral van het type game dat u speelt. Met ons 8700K-systeem zijn we overgestapt van vastzitten aan zeer snelle codering in een CPU-veeleisende game, naar het kunnen gebruiken van een snelle en gelijkmatige voorinstelling met een stabiele game-output van 60 FPS met instellingen van goede kwaliteit in een titel die minder CPU vereist.

Maar waar omroepen naar moeten streven, is om de snelle preset tot een minimum te beperken, de eerste preset voor Twitch-streaming waarbij de uitvoerkwaliteit goed genoeg is met 6 Mbps, en hoewel ze niet geweldig zijn voor snelle actiescènes, zijn ze ofwel snellere ofwel zeer snelle presets, maar nog steeds op goede hardware. verkrijgbaar. Medium is ook het proberen waard voor mensen met geavanceerde systemen, maar ik zou geen moeite doen met de nog langzamere presets.

Hoewel het leuk is om games op één computer te kunnen spelen en streamen, is dit advies eigenlijk alleen van toepassing op informele of parttime omroepen. Iedereen die professioneel of fulltime streamt, zou een tweede, speciale stream-capture-computer met een goede capture-kaart en CPU moeten gebruiken. Dit maakt dan de coderingstaak volledig vrij en stelt u in staat om comfortabel een medium preset of langzamer te gebruiken voor streams van de beste kwaliteit zonder uw spelprestaties te beïnvloeden.

We hebben nu ontdekt wat de optimale presets zijn vanaf de kwaliteitsvoorgrond. In het tweede deel van deze serie over gamestreaming zullen we onderzoeken welke CPU's in deze presets kunnen coderen, dus houd het in de gaten.

Shopping-snelkoppelingen

Masthead-tegoed: Sean doen