Diverse Fragen zu HEVC/H.265/X.265/AMD H.265 und HDR

  • Hallo zusammen


    Erstmal freut es mich, dass dieses Forum immer noch besteht, wenn auch in neuem Design. Ich habe meine ersten Encoding-Erfahrungen vor gefühlten 15 Jahren hier im Forum gemacht. Damals war StaxRip in den Anfängen und Encodingwissen.de war für mich DER Guide für das Ecodieren. Leider scheint Encodingwissen bei H.264 stehen geblieben zu sein, sonst würde ich diesen Post wohl nicht schreiben.


    Seit diesen gefühlten 15 Jahren verarbeite ich meine Filme wie folgt:
    1. Audiospur: belasse ich auf AC-3 5.1; DTS 5.1 oder MP3 2.0 allfällige Erweiterungen (TrueDTS, DTS-MA...) entferne ich vor dem encoden mit MakeMKV

    2. Videospur: Da ich einen Raspberry (mit KODI) zum abspielen verwende und ich auf meinem NAS nicht unnötig Platz verschwenden möchte, reduziere ich die gerippten BluRays auf FullHD 1080p/CRF 20/Tune "Film" mit x.264, schwarze Balken entferne ich.


    Dieses Vorgehen hat bis vor kurzem ausgereicht.

    Nun, ich habe mir einen neuen TV gekauft, einen 65" OLED mit HDR10 Unterstützung. Und ich muss sagen, ich bin überwältigt von diesem neuen "Film-Erlebnis", schon bei FullHD Filmen ohne HDR. Ich habe mir nun auch einige UHD-HDR-BluRays besorgt um mal zu sehen was das so bringt. Ich habe einige Vergleiche gemacht und bin zum Schluss gekommen, dass ich keine 4K-Auflösung bei Filmen brauche. Ich sehe die Unterschiede praktisch nicht. Um wie oben schon geschrieben möglichst keinen Platz zu verschwenden habe ich vor, die UHD-HDR Rips auf FullHD HDR zu encodieren. Und hier fangen meine Probleme und Fragen an:


    A. Ich habe herausgefunden, dass nur H.265 in der Lage ist, 10/12bit Farbtiefe zu handeln. H.264 könnte theoretisch zwar auch mit 10bit umgehen allerdings gibt es keine CPU, die mit H.264/10bit umgehen kann. Also muss ich H.265 verwenden wenn ich HDR will, richtig?


    B. Ich musste leider feststellen, dass mein Raspberry Pi 2 (3+ wäre auch nicht besser) nicht für H.265 geeignet ist, ich muss also einen neuen Player besorgen. Da ich meine Film-Sammlung (über 2000 Filme) auf Kodi behalten möchte, scheint es als einzige sinnvolle Alternative nur Nvidia Shield zu geben. Oder habt ihr andere Ideen?


    C. Sehe ich das richtig, dass ein UHD-HDR BluRay Release ANDERS gemastert wird als ein HD-BluRay Release? Also ich meine, es lassen sich biem UHD-HDR-BluRay Release nicht so einfach die HDR-Informationen entfernen, damit man 1:1 das FullHD BluRay Release bekommt? Ausser bei Dolby Vision ginge das, das sei so gemacht wie DTS-MA, wo man den "MA"-Zustatz einfach entfernen kann um DTS zu erhalten. Aber bei HDR10 geht das nicht. Man könnte zwar neu encodieren aber das Resultat ist bei weitem nicht mit dem direkt FullHD gemasterten Release vergleichbar (tonemapping stimmt nicht, Kontraste zu stark...). Richtig?


    D. Ist es theoretisch möglich ein UHD-HDR10 Release (3840x2160 HDR10) zu FullHD-HDR10 (1920x1080 HDR10) zu encodieren?


    E. Falls ja bei "D.", gelten die selben CRF-Werte für gleiche resultate wie bei x264? Also x265 CRF20 ~ x264 CRF20?


    F. Ich habe eine AMD RX580 Grafikkarte und habe kürzlich festgestellt, dass ich auch diese zum encoden verwenden kann. Welche Einstellungen muss ich bei StaxRip mit Encoder = AMD H.265 einstellen um in etwa die Qualität von x264 CRF20 zu erhalten (Auflösung = 1080p)?


    G. Wie stelle ich AMD H.265 ein, damit eine HDR10 Quelle auch eine HDR10 Ergebnis bietet. Das habe ich noch nicht herausgefunden wie das geht. Das Resultat war stets 8bit Farbtiefe.


    H. Da mein TV nur HDR10 oder HDR10+ wiedergeben kann, nicht aber Dolby Vision, ist es möglich aus Dolby Vision HDR10+ zu machen beim encoden?


    Ich freue mich schon auf eure Antworten. Und falls irgendwo im Forum-Dchungel schon Antworten auf meine Fragen bestehen, dann gerne darauf verlinken.

    Vielen Dank schon mal!


    PS: Warum gibt es eigtl. keine H.265 Rubrik?

  • Lauscher

    Hat den Titel des Themas von „Diverse Fragen zu HECV/H.265/X.265/AMD H.265 und HDR“ zu „Diverse Fragen zu HEVC/H.265/X.265/AMD H.265 und HDR“ geändert.
  • A: Raspi3 mit leichtem overclocking sollte h264 10bit glaube ich schaffen. Die einzigen chips die das wohl können sind von Rockchip.

    B: Ich nutze eine 40€ "china box" wo ich libre elec bzw core elec drauf gepackt habe. Die Amlogic S912/S905x chips können alle h265 10bit ohne Probleme abspielen, aber kein 12 bit.


    E: nein, ich glaube man muss es um 3-5 crf anpassen, dann stimmt es zumindest grob.


    Mit UHD HDR habe ich leider 0 Erfahungen, kann daher nichts dazu sagen.

  • F: CRF ist eine Bitratensteuerung, die außer x264 (und x265) kaum ein anderer Encoder ebenso anbietet. Die meisten dürften feste Quantisierungsfaktoren oder Zielbitrate unterstützen. Ob ein Hardware-Encoder überhaupt eine vergleichbare Qualität erreichen kann, ist ziemlich fragwürdig, weil diese Chips das Video oft mit ziemlich geringer Komplexität berechnen, ähnlich den schnellsten Presets on x264 oder anderen Kompatibilitätseinschränkungen.


    G: Ob der Encoder überhaupt 10-bit-Tiefe unterstützt, würde ich bezweifeln, bis mit jemand die Passage in der technischen Dokumentation des Encoderchips zeigt...


    P.S.: Micha ist sehr beschäftigt, oft auch im Ausland. Für einen Umbau der Forenstruktur hätte er wohl kaum Zeit.

  • Danke Euch beiden schon mal für die Antworten.


    Das mit den Alternativen Playern muss ich mir mal anschauen.


    Und den AMD H.265 werd ich dann wohl auch nicht verwenden.


    Hat jemand noch Antworten auf C, D und H? Und jemand noch genaueres zu E?


    Vielen dank schon mal.

  • Ich bin zwar kein Videoformat-Profi, ich kann zu diesen Themen hier nur meine persönliche Meinung schreiben.


    Zu C:

    Ja, selbstverständlich werden HD-Blu-rays (ITU-R Rec. 709) anders gemastert. Bei HD fehlt ja das „HDR-Farbmanagement“.

    Es macht keinen Sinn, bei UHD HDR, die HDR-Parameter (ITU-R Rec. 2020) zu entfernen, sonst wäre es ja nur UHD.

    Dann fiele auch ein Teil, der besseren Bildqualität weg.


    Theoretisch müsste man den UHD-HDR-Stream mit einer Schnittsoftware nachbearbeiten. Ein 1080-Projekt anlegen.

    Bei 1080, saufen vermutlich die meisten Farben ab und die Helligkeit und der Kontrast stimmen nicht. Das muss alles korrigiert werden.

    Dazu braucht an erst einmal einen kalibrierten Monitor, dann eine Finish-Farbkorrektur-Software, wie z. Bsp. DaVinci Resolve, Baselight oder Avid Symphony.


    Ob Adobe so ein Tool anbietet, weiß ich nicht. Aber das würde Tausende von Euro kosten, und fällt somit weg.

    Mit einem normalen Farbkorrektur-Programm, ist das nicht zu machen. Ein Problem, könnten die Metadaten sein.

    Außerdem kämen noch Kosten, für ein Training des jeweiligen Programms hinzu. Das kann man vergessen.


    Zu D:

    Mir ist nicht bekannt, dass es HD 1080 (BT.709) mit HDR (BT.2020) gibt. Das unterstützt kein Encoder.


    Zu E:

    Ich selbst, habe das noch nicht so ausprobiert, aber theoretisch müsste CRF20 bei x265 eine gute Bildqualität bieten.

    Man könnte vielleicht sogar CRF21 oder CRF22 einstellen, da x265 eine um 50% bessere Bildqualität aufweist, als x264.


    Zu H:

    Ja, es ist möglich aus Dolby Vision HDR10+ zu machen, da Dolby Vision abwärtskompatibel zu HDR10+ ist. Beide Systeme arbeiten ja mit BT.2020.

    Ein kostenloser Encoder wird allerdings die Möglichkeit nicht bieten, dies zu wandeln, denn Dolby verlangt hierzu hohe Lizenzgebühren.

    HDR ist ja lizenzfrei.


    Das machen meines Wissens nach nur Industrie-Encoder für 10.000 Euro, wie z. Bsp. die Encoder von Cambria- oder Telestream.

    Vergiss es.


    Zu G:

    Die Radeon RX580 ist eine gute Grafikkarte. Bei 4- oder 8 GB, kannste ja einmal die CUDA-Funktion ausprobieren, ob dadurch schneller codiert wird.

    Die 10 Bit Farbtiefe, müsste in den Einstellungen des Codecs zu finden sein. Technisch sollte die RX580 auch 10 Bit ausgeben.

    Aber ob dein Encoder 10 Bit unterstützt, weiß ich nicht. Mein Encoder bietet 10 Bit bis 8 Bit Dithering.

    Einmal editiert, zuletzt von Pro Jo () aus folgendem Grund: Baseline in Baselight korrigiert.

  • Danke Pro Jo


    Verstehe ich Dich richtig bei "Zu C", man kann nicht einfach "3840x2160 HDR10" zu "1920x1080 HDR10" encoden, das hätte auch auf die Farben/Helligkeit Einfluss?

    Oder meinst Du "3840x2160 HDR10" geht nicht einfach zu "1920x1080 8-Bit"


    Und zu der AMD-Karte. Wo finde ich eine Anleitung zu den Einstellungen zu diesem Encoder? Kann man die CUDA Funktion zusätzlich zur CPU nutzen? Oder geht nur entweder Grafikkarte oder CPU?

  • Zitat

    Verstehe ich Dich richtig bei "Zu C", man kann nicht einfach "3840x2160 HDR10" zu "1920x1080 HDR10" encoden, das hätte auch auf die Farben/Helligkeit Einfluss?

    bei HDR10 -> HDR10 kann je nach Höhe des Auflösungswechseln und Resizers (Gamma Aware resizing,..) ein leichte Veränderung der Farbe&Co stattfinden, diese werden i.d.R. aber ignoriert. (Man beachte, dies gilt nicht für HDR10+ und Dolby Vision)


    Zitat

    Oder meinst Du "3840x2160 HDR10" geht nicht einfach zu "1920x1080 8-Bit"

    HDR -> SDR und die Umwandlung von einem HDR Format in ein anderes und das Handeln von dynamischen HDR Formaten (HDR10+ und Dolby Vision), sind nicht trivial.


    Zitat

    Und zu der AMD-Karte. Wo finde ich eine Anleitung zu den Einstellungen zu diesem Encoder?

    VCEEnc (https://github.com/rigaya/VCEEnc) hat eine Hilfe, die zumindest aufzeigt welche Parameter es gibt.

    Eine wirklich sinnige Anleitung habe ich für VCE oder NVIDIA Encoder noch nicht gesehen. (Weil anscheinend keiner die Zeit und Nerv hat so etwas zu schreiben,..)


    Zitat

    Kann man die CUDA Funktion zusätzlich zur CPU nutzen?

    i.d.R. ist es entweder eher ein 'entweder oder', wobei die CPU immer mit benutzt wird, meist macht ein Miteinander aber nur wenig Sinn, da das Hin-und-Her zwischen CPU&VPUim Verhältnis langsam ist. Sieht man auch schön am Unterschied ob man De- und Encoding mit der VPU macht, oder decoding auf der CPU und encoding auf der VPU.

  • Zitat

    bei HDR10 -> HDR10 kann je nach Höhe des Auflösungswechseln und Resizers (Gamma Aware resizing,..) ein leichte Veränderung der Farbe&Co stattfinden, diese werden i.d.R. aber ignoriert. (Man beachte, dies gilt nicht für HDR10+ und Dolby Vision)

    Und was würde man bei HDR10+ oder Dolby Vision machen? Oder gibt es da (noch) keine Lösung?

  • Momentan muss für HDR10+ und Dolby Vision muss das Material neu ge'color graded' werden. :)

    Genau das Gleiche wäre nötig wenn man zu oder von einem dieser Formate in ein anders umwandeln will.

    Vielleicht bringt Dolby auch mal Software raus, welche HDR Format X -> Dolby Vision automatisch kann, aber da meines Wissens nach alles rund um Dolby Vision mit NDAs geschützt ist sehe ich nicht das da in nächster Zeit was passiert. (Sehe nicht das da jemand versucht per Reversiere-Engeneering drann zu gehen.)


    Cu Selur


    Ps,: Wüsste aktuell nicht mal wie man mit freier Software Dolby Vision decodieren könnte.

  • Eine Frage noch an Selur:


    Zitat

    bei HDR10 -> HDR10 kann je nach Höhe des Auflösungswechseln und Resizers (Gamma Aware resizing,..) ein leichte Veränderung der Farbe&Co stattfinden, diese werden i.d.R. aber ignoriert. (Man beachte, dies gilt nicht für HDR10+ und Dolby Vision)

    was meintest Du mit Gamma Aware resizing? Wo finde ich diese Einstellung in StaxRip?

  • Noch eine Frage. Die Original Video-Spur sieht so aus:

    Nach dem encoden mit x265, CRF 20, High Tier, 10bit HDR10 sieht es so aus:




    Mastering display luminance wurde also

    von "min: 0.0050 cd/m2, max: 4000 cd/m2"

    zu "min: 0.0001 cd/m2, max: 1000 cd/m2"


    Was hat das zu bedeuten? Ist desshalb das Bild so dunkel auf dem TV? Kann das verdindert werden? Oder soll das so sein?

  • Zitat

    Was hat das zu bedeuten?

    Das Wer immer x265 eingestellt hat die HDR-10 Parameter nicht mit übernommen hat.

    Zitat

    Kann das verdindert werden?

    Ja, wenn man den Encoder ordentlich konfiguriert,....

    Zitat

    Oder soll das so sein?

    Frag den der die Werte so gesetzt hat warum er es so getan hat, dann weißt Du ob es so sein sollte oder nicht,...

  • Naja, gesetzt habe ich die Werte und zwar wie folgt in den Screenshots ersichtlich.

    Kannst Du mir sagen wo und wie ich das einstelle, dass die HDR-Settings mitgeben werden?

    Und wenn Du schon dabei bist, wo könnte man dieses Gamma Aware Resizing (ResampleHQ als Avisynth Filter oder als Vapoursynth script) einstellen kann?

  • Nutze StaxRip nicht, aber

    Zitat

    Mastering display luminance wurde also

    von "min: 0.0050 cd/m2, max: 4000 cd/m2"

    zu "min: 0.0001 cd/m2, max: 1000 cd/m2"

    wird durch die Informationen gesetzt die Du bei x265 Options->VUI 1->MasterDisplay angegeben hast.

    Zitat

    wo könnte man dieses Gamma Aware Resizing (ResampleHQ als Avisynth Filter oder als Vapoursynth script) einstellen kann?

    Keine Ahnung von StaxRip und ob es ResampleHQ (https://forum.doom9.org/showthread.php?t=160038) oder dpidDown (https://github.com/xyx98/my-va…script/blob/master/xvs.py) unterstützt.

  • Ich schätze, Du besitzt einen Samsung mit 65“. Bei Samsung-Displays mit UHD und HDR reichen die Helligkeitswerte von 300 bis 700 cd/m2 (Nits).

    Der Kontrast beträgt dabei von 4000 : 1 bis zu 6000 : 1.


    Das hilft dir zwar nicht weiter, aber es ist bestimmt interessant, diese zwei Dokumente durchzulesen.

    Allgemeine Infos zu HDR unter Warum das HDR-Chaos ein Ende nehmen muss.


    Monitorkalibrierung UHD HDR unter http://www.displaycalibration.…uhd-hdr-wcg-kalibrierung/

  • Ich habe einen Philips 65OLED873 und ich denke, mein Problem sind die falschen Metadaten im Film.


    Ich frag mich, wie ich diese Metadaten ändern soll. dass das richtige Ergebnis raus kommt.


    Wie Selur oben geschrieben hat, muss man bei Staxrip unter "x265 Options->VUI 1->MasterDisplay"


    Da steht momentan folgendes drin:

    G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,1)

    Was bedeuten all die Zahlen?