- Mitglied seit
- Jun 1, 2018
- Beiträge
- 10.195
- Bewertungspunkte
- 18.809
- Punkte
- 114
- Alter
- 59
- Standort
- Labor
Ja, herzlich willkommen im Club
Den zentralen Bestandteil dieser Arbeit wird die Analyse mithilfe des VMAF von Netflix bilden. Diese Metrik wurde gewählt, da die Ergebnisse am besten mit denen aus Laborexperimenten mit menschlichen Teilnehmern übereinstimmen und das Verfahren in der Industrie weitgehend anerkannt ist (Barman et al., 2018, S. 9; Li, Bampis, et al., 2018; Rassool, 2017, S. 2). VMAF kombiniert die Modellierung des menschlichen Sehens mit maschinellem Lernen. Es wurde von Netflix in Zusammenarbeit mit der University of Southern California entwickelt. Im Juni 2016 hat Netflix VMAF als Open Source auf GitHub veröffentlicht (Li, 2020).
[...]
Der Datensatz von Netflix besteht aus 34 Referenzvideos aus der Netflix Datenbank mit je sechs Sekunden Länge sowie einer Auswahl von öffentlich verfügbarem Material. Die Inhalte der Quellclips decken eine breite Palette ab, etwa Animation, Menschen, Kamerabewegung, Nahaufnahmen, Wasser und mehr. Die Clips unterscheiden sich außerdem in Filmkörnung, Helligkeit, Kontrast, Farbsättigung, Bewegung, Textur und Schärfe. Aus den Referenzclips werden H.264/AVC kodierte Clips mit Auflösungen von 384x288 bis 920x1080 und Bitraten von 375 kbps bis 20 000 kbps berechnet. Die berechneten degradierten Clips werden anschließend in standardisierten Tests unter Beachtung der ITU-R BT.500–13 Empfehlung einer Kontrollgruppe mittels der Double Stimulus Impairment Scale (DSIS) Methode präsentiert. De Teilnehmer bekommen das degradierte und das Referenzvideo nacheinander zu sehen und sollten den Grad der Qualitätsverschlechterung anhand einer Skala von 1 (sehr störend) bis 5 (nicht wahrnehmbar) angeben. Aus den Ergebnissen wird ein Differential Mean Opinion Score (DMOS) ermittelt und auf einer Skala von 0-100 normalisiert. Das Referenzvideo hat einen VMAF Score von 100. Bei den Teilnehmern handelte es sich um keine Experten aus dem Videobereich. Die so ermittelten DMOS Werte dienen als Grundlage für das maschinelle Lernen, womit das VMAF Modell trainiert getestet wird. Der VMAF Algorithmus kombiniert modifiziere Versionen der Metriken VIF und DLM miteinander und misst die zeitliche Differenz zwischen nebeneinanderliegenden Frames. Die elementaren Metriken werden vom Machine-Learning Algorithmus gewichtet, woraus die endgültige Metrik resultiert. (Li, 2020)
Netflix-eigene Vergleiche mit anderen Metriken zeigen, dass VMAF den Studien-ergebnissen am nächsten entspricht. Es kann auch dazu genutzt werden, um Qualität von Codecs miteinander zu vergleichen, was für diese Arbeit von zentraler Bedeutung ist. Seit dem GitHub Release 2016 wurde die Performance von VMAF stark verbessert sowie mit libvmaf eine C-Bibliothek entwickelt, welche als Filter in FFmpeg integriert ist (ffmpeg.org, 2020a). Das erleichtert den Einsatz und erlaubt sogar komprimierte Daten als Input / Referenz. Außerdem wurde die Genauigkeit laut Netflix verbessert (Li, Bampis, et al., 2018).
Habe auch gerade diese Webseite und diesen Artikel entdeckt und möchte mich herzlich bedanken.Und ja, AMD steht bezüglich Hardware-Encoder mittlerweile wirklich unter Zugzwang. Immer mehr Leute streamen auf Twitch / YouTube und dafür ist ne RTX Karte mangels Konkurrenz zurzeit ein absoluter no-Brainer. Premiere Pro kann seit neuestem auch NVENC beim Exportieren verwenden.Kommt der bessere Support von Profi-Software (CUDA) noch dazu.
In dem Sinne, nochmal vielen Dank an @Igor Wallossek für das Angebot einen Artikel für igorslab zu schreiben. Freut mich wirklich dass es Interesse an den Ergebnissen gibt.
Nicht mal mit NVENC kann man eine Transcodierung nach vorgegebener Qualität machen. Hier ist es auch nicht getestet worden. Im besten Fall CQP (constant quantisation parameter) möglich, was aber kein CRF ist und davon wird immer abgeraten. NVENC bleibt immer bitrate gesteuert. Das Beste, was man daraus machen kann, ist 2-pass-VBR (solange gut implementiert... Handbrake kann es gar nicht, DVDfab oder Xmedia Recode kann es).Habe auch gerade diese Webseite und diesen Artikel entdeckt und möchte mich herzlich bedanken.
Ich würde mich sehr freuen, wenn anlässlich der kommenden 6000er AMD Grafikkarten mit der Methodik nicht nur nach Streaming Encodierung (also vorgegebene Bitrate), sondern auch Videorecodierung (also vorgegebene Qualität) getestet würde.
(Und wie wirkt sich SAM aus?)
Danke für die Tests! Nutze NVENC Export mit hohen Bitraten (40-100 Mbit, meist 4K) aus Adobe Media Encoder und bin von der Qualität überzeugt, kommt fast an x264 / x265 slow ran.Für die Freaks von HW-transcoding weitere Scores:
1. Hybrid 20.10.11.1 (cuda de- und encoding), Turing NVENC gen 7: Score 94,8, blitzschnell
2. XMedia Recode 3.5.2.3 (CPU decoding, GPU encoding), Turing NVENC Gen. 7: Score 96,1
3. XMedia Recode 3.5.2.3 (GPU de- und encoding), Turing NVENC Gen. 7: Score 96,1 aber einiges schneller als Punkt 2
Bei der CPU de- / GPU encoding unter Punkt 2 war mein Ryzen 2600x kaum ausgelastet, trotzdem langsamer (ca 150 fps vs 210 fps). Es liegt sicherlich am Flaschenhals zwischen RAM und DDR6 VRAM (unter Punkt 1 und 3 läuft alles in VRAM ab)
Hybrid nutzte B-Frames, XMedia Recode wieder nicht, trotzdem liefert es besser ab. Unglaublich.
Ergänzung:
ich habe den berühmten crowdrun clip (extrem schwierig zu komprimieren) auch durchlaufen lassen:
XMediaRecode x.265 CRF 22 preset slow als "Goldstandard": Score 56,8 (kam 3260 kbps raus)
XMediaRecode Turing NVENC Gen 7, VBR HQ Bitrate 3260 kbps: Score 54,9
Tempounterschied ca. Faktor 10 wenn nicht mehr... NVENC Gen. 7 ist scheinbar mehr als brauchbar! Es ist verdammt nach an x.265 (sogar slow), ca. 10x so schnell und braucht kaum Strom (CPU nahezu Idle 40 °C, der Lüfter meiner semi-silent 1650 Super bleibt ganze Zeit stehen da GPU <51 °C)
Mich würde ja interessieren ob du Vergleiche zwischen NVENC CQP und x264/x265 CRF angestellt hast.Für die Freaks von HW-transcoding weitere Scores: