@CoRori
Eigentlich geht es immer noch um diesen Beitrag:
Der NVEnc Chip wird da denk ich mal mehr können als die GPU selbst. Denn NVEnc ist ja ein seperater Chip, die GPU kümmert sich darum ja nicht. Sonst würde man mit Shadowplay ja auch fps im Spiel bei Aufnahme verlieren.
Wobei ich anmerken sollte: NVEnc ist der NVIDIA Encoder der auf Basis der NVIDIA GPU arbeitet.
Da wird kein Chip angesprochen, sondern einfach nur das getan was alle anderen GPU Encoder auch tuen. Nämlich via GPU statt mit der CPU encodieren.
Ein Encoder ist allerdings nur begrenzt parallelisierbar, weshalb meist ein CPU Encoder ein GPU Encoder schlagen kann.
NVEnc hat also rein gar nix mit einem Chip zu tun erst mal, sondern ist ein reiner Software Aspekt.
Wie jede andere Grafikkarte auch hat NVIDIA eine integrierte Anwendungsspezifische Schaltung (ASIC).
Diese speziellen Chips leisten dann unterschiedliche Arbeiten je nach Anwendungszwecken. Und dienen halt auch für Software als Arbeitsmittel.
Und dieser Chip wird dann bei NVIDIA Karten zur Video Encodierung genutzt. Dafür ist der NVEnc Encoder dann speziell programmiert.
Die Performance und Unterstützung des NVEnc Encoders richtet sich also stark danach welche NVIDIA Grafikkarte man besitzt.
Untergliedern kann man diese zur Zeit in 4 Generationstypen.
- Kepler Generaton (max. Standard High-Profile, YUV420 30FPS, 1080p)
- Maxwell GM107/GM108 (max. High-Profile 4:4:4, YUV444 480FPS, 1080p, predective lossless)
- Maxwell GM20x (HEVC Support (h265), max. High-Profile 4:4:4, YUV444 60FPS, 4Kp, predective lossless
- Pascal GP10x (gleiche wie bei 3, nur das 8K Unterstützt wird und 10Bit)
Dies obliegt dann den Treibern der Grafikkarte die dann halt auch NVEnc mit installieren. Und erst die Zusammenarbeit zwischen NVEnc und der NVIDIA Karte erzeugt dann das Endresultat.
Fazit: NVEnc ist kein Chip, sondern ein Encoder der Speziell mit den NVIDIA Grafiktreibern mitgeliefert wird bzw. nachinstalliert wird wie z.B. mit NVIDIA GeForce Experience.
Diese Codecs sind erst ansprechbar, wenn sie halt auch unterstützt werden von der Hardware und Software Seite.
Bei AMD gibt es halt das Äquivalent dazu, nämlich der VCE (Video Coding Engine)
Und Bei Intel ist gibt es ebenfalls ein Äquivalent, nämlich Intel Quick Sync.
Den NVEnc Encoder zu nutzen, obliegt nicht mal der Geheimhaltung von NVIDIA, weil den kann sich jeder runterladen und in seine eigene Anwendungen einbinden lassen.
Jedoch und das vergessen viele immer wieder:
NVEnc in OBS arbeitet im Vergleich zu Shadowplay erheblich anders, einfach weil Shadowplay eine ganz andere Technologie nutzt die Bilder abzugreifen. Diese werden nämlich von der Grafikkarte schon entnommen bevor sie überhaupt mit DirectX oder OpenGL dargestellt werden. Daher auch kein Leistungsverlust der FPS.
Diese Technologie wird aber von NVIDIA unter Verschluss gehalten, sowie jede andere praktische Funktion die NVIDIA Karten eigentlich könnten.
NVEnc ist demnach bei OBS auch nicht viel schneller als der VCE bei AMD oder Intel Quick Sync bei Intel.
Kommt dann halt drauf an wie diese GPU Encoder eingestellt wurden, weil alle Optionen man als User ja auch nicht zu erfahren bekommt.
Manche Entwickler lassen einen z.B. den NVenc ziemlich gut da stehen, weil sie ihn einfach auf Speed optimiert haben.
Weil sie vermutlich genauso dann dachten wie viele andere hier auch, das NVEnc echt toll ist ;D
Aber ehrlich gesagt, und das ist halt meine Meinung, es ist mir zu blöd und auch viel zu Spezifisch alles was das angeht.
Zum einen haben die Durchschnittsuser hier die kaum Ahnung davon haben noch weniger Ahnung was NVEnc im eigentlichen macht. Und noch schlechter ist der Support dafür zur Aufklärung dessen was das Ding nun genau tut und arbeitet.
Er ist zwars da und wird genutzt, aber die Tests und Analysen dessen was die Dinger nun richtig hergeben ist auf vielen Informationsquellen im Netz total fürn Arsch und man muss sich da echt mit befassen dann und nicht auf jeden Schund im Netz reinfallen.
Und wie @De-M-oN es schreibt das man mit 1440p und NVEnc nur über die Pascal das ganze Nutzbringend aber auch Umständlich auch nutzen kann, sind die User die das dann auch so machen wollen, eigentlich nur auf NVIDIA Karten der 4ten Generation angewiesen.
Durchschnittspreis einer Karte der 4ten Generation kostet so ca. 400€ - 900€ je nach Karte
Und das ist einfach ein zu stolzer Preis find ich.
NVEnc hat schon einige Vorteile, aber gewiss nicht mit Shadowplay. Einfach weil sich NVIDIA da so quer stellt mit ihrer Hooking Technologie.
Und die werden sie ja bekanntlich nicht raus rücken ;D
MagicYUV in Shadowplay und das Ding würde abgehen wie Schmitz Katze.
Oder halt NVenc ein Lossless Mode spendieren in Shadowplay und das Ding wäre auch mal tauglich.
Die GPU Encoder haben bis jetzt nur einen einzigen Vorteil: Die Entlastung der CPU. Nicht mehr und nicht weniger.
Jedoch: Wenn man z.B. in Blender via einem GPU Encoder encodieren würde, würde der Render Prozess etwas abgeschwächt werden. Unter Schlussstrich wenn der GPU Encoder genauso Moderat eingestellt ist wie z.B. x264, dann habe ich eigentlich nicht viel mehr Zeit gewonnen. Im Gegenteil eher. Die Grafikkarte ist an sich was Encoding angeht langsamer, weil Nicht-parallelisierbarer Prozess, und schon habe ich mit einem CPU Encoder mehr gewonnen.
Wer halt nicht gerade eine Super-Mega Grafikkarte hat, sollte NVEnc gar nicht erst nehmen.
Und vor allem würde ich mal sagen das NVEnc keine optimale Lösung ist gegenüber Usern mit AMD Karten oder älteren NVIDIA Karten.
Bzw. vllt. sogar neueren NVIDIA Karten die NVEnc dann irgendwann nicht mehr unterstützen.
Es ist halt eine temporäre Hardware gerichtete Lösung. Und sowas find ich halt mies.
Ich finde zum einen ist NVenc nicht mal richtig ausgereift und zum anderen finde ich das es keine schöne Lösung ist, da es bei jedem User anders ablaufen kann. Es ist halt keine Universelle Lösung.