Problem: Farben/Kontrast nach Konvertierung (und im VLC) verfälscht - Fortsetzung

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Problem: Farben/Kontrast nach Konvertierung (und im VLC) verfälscht - Fortsetzung

    Anzeige
    Siehe Problem: Farben/Kontrast nach Konvertierung (und im VLC) verfälscht!

    Also das ganze funktioniert irgendwie nicht. Es wird jedes Mal durch Handbreak von 16-235 auf 0-255 konvertiert und die Videos werden zu dunkel. - Außer es wird im Player mit 16-235 wieder gegeben was Youtube aber nicht macht.
    Das Problem müsste doch eigentlich jeder haben, der mit YV12 aufnimmt und es konvertiert als sei es RGB - wenn nicht, dann wird es Youtube machen.

    Gibt es keinen passenden command line für Handbreak/x264 was eine 1:1 Farbübertragung auf ein 0-255-Video "erzwingt" ?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Aleã ()

  • Warum nutzt du VLC? Kein Wunder, dass die Farben verfälscht sind... nimm andere Player, aber bloss nicht VLC.
    Sicher, dass die Rohdatei keine Farbfehler hat?

    Edit: Encodest du das vor Handbrake nochmal mit was Anderem? Wahrscheinlich ist es in sRGB und nicht in cRGB (heißt das so?). Überprüfe mal alles auf dem Weg von der Aufnahme, zum fertigen Video.
    Grüße, GLaDOS

    "Do you know who I am? I'm the man whose gonna burn your house down - with the lemons! I'm gonna get my engineers to invent a combustible lemon that'll burn your house down!" - Cave Johnson, CEO of Aperture Science

    YouTube: Max Play

    Rechtschreibung und Grammatik sind eine Tugend, aber jeder macht mal Fehler...

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von GLaDOS () aus folgendem Grund: Handbrake... danke DeMoN!

  • Standardmäßig wird bei YV12 => 16-235 Range benutzt. Wenn Handbrake (nicht break) es auf 0-255 codieren sollte, dann musses aber schon die v.u.i range bei x264s commandline auf 0-255 erzwingen, ansonsten macht x264 definitiv 16-235.


    VLC zwingt in der Ausgabe es als RGB 0-255 auszugeben. Dadurch haste ein zu helles Bild mit zu blassen Farben.

    MPC-HC 32bit @ Enhanced Video Renderer custom presenter (Optionen - Ausgabe) stellt YV12 definitiv korrekt dar. ( EVR auf 0-255 eingestellt, wenn du einen PC Monitor hast (standardmäßig so eingestellt) )

    Bei Nvidia auch unter Video alle Filter deaktivieren!



    Bei Menüpunkt Videofarbeinstellungen das selbe benutzen. Keine Nvidia Vorgabe. AMD hat ebenfalls sehr viele Videofilter. Alles abschalten!

    Youtube encodiert ebenfalls in YV12 mit 16-235 Range.
    Aktuelle Projekte/Videos


  • Anzeige

    De-M-oN schrieb:

    VLC zwingt in der Ausgabe es als RGB 0-255 auszugeben. Dadurch haste ein zu helles Bild mit zu blassen Farben.


    Kann ich voll bestätigen. Hatte nämlich das gleiche Problem mit dem VLC bei der Darstellung der Farben. Alle Videos wurden mit einem Grauschleier überzogen. Habe das Problem damit gelöst, daß ich ein Video im VLC und im MPC-HC nebeneinander gelegt habe und dann beim VLC solange die Farbeinstellungen angepasst hab, bis das Video im VLC genauso dargestellt wurde, wie im MPC-HC und bei YT.

    Sheratan
    ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆

    ◆ Meine Empfehlung: FarCry ◆ Laufendes Projekt: World of Tanks

    ◆ Meine Streams findet ihr auf der Gamerplattform: Hitbox.tv ◆



  • Bei VLC gibt es irgendwo eine Einstellung das der nicht YUV Videos auf RGB Ausgabe zwingen soll. Ich versteh auch nicht wirklich warum son haken standardmäßig drin ist, bzw warum es diesen überhaupt gibt .. aber ok.

    Also an den Farbeinstellungen musste nicht rumspielen. Wäre eh ziemlich inakkurat. Zumal es ja um die Range geht, warum es nicht korrekt dargestellt wird. Und die falsche Range haste mit deiner Anpassung ja noch immer laufen.


    Aber ich rate dir eh zum MPC-HC. Bereits der EVR Ausgaberenderer hat eine deutlich bessere Qualität als der Ausgaberenderer von VLC.
    Aktuelle Projekte/Videos


  • Im Prinzip benutze ich den VLC ja kaum noch, da ich auch fast nur noch mit dem MPC-HC Videos schaue. Nur hin und wieder will der MCP-HC bei meinen Rohvideos nicht so wie ich will und dann kommt der VLC als Ersatz bei der Videosichtung zum Einsatz. Da war die Anpassung in den Einstellungen die schnellste Notlösung um nicht soeinen hässlichen Grauschleier zu haben.

    Sheratan
    ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆

    ◆ Meine Empfehlung: FarCry ◆ Laufendes Projekt: World of Tanks

    ◆ Meine Streams findet ihr auf der Gamerplattform: Hitbox.tv ◆



  • GLaDOS schrieb:

    Warum nutzt du VLC? Kein Wunder, dass die Farben verfälscht sind... nimm andere Player, aber bloss nicht VLC.
    Sicher, dass die Rohdatei keine Farbfehler hat?
    Edit: Encodest du das vor Handbreak nochmal mit was Anderem? Wahrscheinlich ist es in sRGB und nicht in cRGB (heißt das so?). Überprüfe mal alles auf dem Weg von der Aufnahme, zum fertigen Video.
    Ich nutze VLC seit der Empfehlung hier auch nicht mehr.
    Meine Videos werden mit DXtory unkomprimiert aufgenommen und bleiben bis zur Konvertierung auch so. Hier meine Einstellungen (ohne MPC-Vergleich)

    Dann ist noch alles in Ordnung. Siehe
    einfach den kack player nicht nutzen.
    hatte noch NIE Farbprobleme mit YV12 und MPC-HC 32bit

    Interessanterweise läuft es mit MPC-HC im eingestellten EVR-Farbraum von 16-235 richtig und sie sehen aus wie die Quelldatei. Stelle ich es jedoch auf 0-255 habe ich wieder das dunkle Bild. (Bei Quelldateien aber nicht oO - da läuft beides) - Das Problem liegt besonders, dass sie in Videobearbeitungsprogrammen, die ich bis jetzt genutzt habe, ebenfalls dunkel sind. Teilweise so sehr, dass ich nichts erkennen kann. Dazu frage ich mich wie Andere die Videos auf Youtube sehen, die für mich ebenfalls nach der Konvertierung dunkel bleiben. (Unkomprimierte Videos habe ich bis jetzt nicht hoch geladen - bisweilen weil zu groß.

    De-M-oN schrieb:

    Standardmäßig wird bei YV12 => 16-235 Range benutzt. Wenn Handbrake (nicht break) es auf 0-255 codieren sollte, dann musses aber schon die v.u.i range bei x264s commandline auf 0-255 erzwingen, ansonsten macht x264 definitiv 16-235.

    Wie mache ich das? Ich habe schon einige command lines ausprobiert, falls ich sie überhaupt richtig eingetragen habe.

    VLC zwingt in der Ausgabe es als RGB 0-255 auszugeben. Dadurch haste ein zu helles Bild mit zu blassen Farben.


    Wäre schön wenn. Dann könnte man auch etwas erkennen. Siehe bereits o.g. Screenshots

    MPC-HC 32bit @ Enhanced Video Renderer custom presenter (Optionen - Ausgabe) stellt YV12 definitiv korrekt dar. ( EVR auf 0-255 eingestellt, wenn du einen PC Monitor hast (standardmäßig so eingestellt) )

    Bei mir läuft es wie gesagt auf RGB nicht - wohl aber wenn ich im MPC sRGB wähle. Nehme ich also den "schlechten" Farbraum, sieht es so aus wie die Quelldatei, die in sRGB im Spiel aufgenommen wurde.
    Bei Menüpunkt Videofarbeinstellungen das selbe benutzen. Keine Nvidia Vorgabe. AMD hat ebenfalls sehr viele Videofilter. Alles abschalten!
    Habe alles abgeschaltet und Häkchen rausgenommen, die ich finden konnte - sogar eigentlich irrelevante.

    Youtube encodiert ebenfalls in YV12 mit 16-235 Range.
    Was eventuell meine Videos noch dunkler machen könnte?

    De-M-oN schrieb:

    Bei VLC gibt es irgendwo eine Einstellung das der nicht YUV Videos auf RGB Ausgabe zwingen soll. Ich versteh auch nicht wirklich warum son haken standardmäßig drin ist, bzw warum es diesen überhaupt gibt .. aber ok.
    Bei mir funktioniert der Haken nicht einmal. Das Video bleibt dunkel. Wie man oben sieht - sogar bei unkomprimierten Videos. VLC ist also bei mir immer dunkel. - schlechter player

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Aleã ()

  • Und du bist 100% sicher das das dunklere Bild NICHT das korrekte Bild ist, wie das Spiel auch aussah?

    Was passiert denn wenn du mal in RGB aufnimmst? (DXTory Codec auf RGB stellen)

    Hast du einen Monitor oder einen Fernseher?

    Offtopic Geschichte: Ich rate dir bei DXTory Synchronous Surface Lock und Wait for available Buffer anzuhaken und die Processing Threads auf 2. Verbessert die ingameFPS maßgeblich und die beiden Haken kannste übers Lexikon nachlesen.
    Aktuelle Projekte/Videos


    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von De-M-oN ()

  • De-M-oN schrieb:

    Und du bist 100% sicher das das dunklere Bild NICHT das korrekte Bild ist, wie das Spiel auch aussah?

    Da oben sind Screenshots nicht war? Für mich ist das oberste Bild, welches per[ Drucktaste/SAbf] aufgenommen wurde, heller. - So sehe ich es auch die ganze Zeit im Spiel.


    Was passiert denn wenn du mal in RGB aufnimmst? (DXTory Codec auf RGB stellen)

    - DXTory RGB nimmt Handbrake nie an.

    Dazu merkwürdigerweise:
    - DXTory YV420 uncompress kann Handbrake anehmen (s.o.), aber kein compress. Das Ergebnis ist wie gesagt dunkler.
    - Lagarith codec (YUV?) nimmt Handbrake an und das Ergebnis ist NICHT dunkler.

    Ich bin jedoch etwas verwirrt, da ich nicht weiß ob RGBA, YV12 oder YUY2 äquivalent zu dxtorys YV420 ist.

    Hast du einen Monitor oder einen Fernseher?

    Monitor. Wie gesagt kann man Einstellungsfehler ausschließen, da ich auf 255/255/255 gestellt habe und zudem würden die Bilder auch bei falschen Einstellungen verschieden aussehen.

    Offtopic Geschichte: Ich rate dir bei DXTory Synchronous Surface Lock und Wait for available Buffer anzuhaken und die Processing Threads auf 2. Verbessert die ingameFPS maßgeblich und die beiden Haken kannste übers Lexikon nachlesen.

    mal testen...

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Aleã ()

  • Aleã schrieb:

    Ich bin jedoch etwas verwirrt, da ich nicht weiß ob RGBA, YV12 oder YUY2 äquivalent zu dxtorys YV420 ist.


    yuv420. So wie es in der codec config auch betitelt ist.

    yuv420 ist die non-planar variante. yv12 ist ein planar farbraum. Bei Planar kommt erst V und dann U. U und V sind also getauscht bei Planar bezüglich Reihenfolge.

    Vllt solltest du es mal via MeGUI probieren mit Einlesung via AVISource. Damit wird der originale Decoder des Codecs angesprochen. Handbrake nutzt ffmpeg für die decodierung, nicht die originalen vom codec mitgelieferten directshow decoder.

    Möglicherweise benutzt dein Spiel auch abweichendes Gamma als 1.0, was das Spiel erst nach dem Grafikspeicher bearbeiten könnte. So zb bei Descent 3. Das benutzt einen Gamma von 1.5, wird aber in 1.0 gamma aufgenommen.
    Die Gammabearbeitung geschieht nämlich meist erst nach dem Grafikspeicher, DXTory liest aber aus dem Grafikspeicher aus. Wenn es das sein sollte, müsste allerdings mit jedem Codec das gleiche Bild am Ende raus kommen. Hattest eig. mehrere Spiele getestet? Dann würde man das ja auch wissen. Ich weißes gerad nicht mehr, der Thread ist schon länger her..
    Ich kann mir jedenfalls denken das Handbrake's ffmpeg in falschem Farbraum/range einliest / encodiert.

    Vllt erkennt Handbrake ja den Lagarith 4:2:0 als RGB an? dann wäre das schon falsch. Und das würde natürlich dann auf alle Fälle erklären warum es dann heller wird.

    Das Problem müsste doch eigentlich jeder haben, der mit YV12 aufnimmt und es konvertiert als sei es RGB


    da schreibstes ja sogar schon.

    In dem Fall unbedingt die x264 GUI wechseln. Denn diese ist dann das Problem.

    edit: so ich hab den thread jetzt nochmal neu durchgelesen, da es einfach zu lange her war.

    Du bekommst also keine 0-255 ausgabe auf deinem monitor raus

    Bei mir funktioniert der Haken nicht einmal. Das Video bleibt dunkel.


    sonst wäre das definitiv nicht so.

    Da stellt sich also nun mehr die Frage, warum gibt dein Monitor nur 16-235 Farbraum aus??

    Kannst du vllt bei deinem Monitor was einstellen, wenn du sicher bist, das die Grafikkarte korrekt konfiguriert ist?

    Dennoch trifft obiges zu. Das dunklere Bild wird das korrekte Bild sein. Ich denke das folgendes der Fall sein wird:

    => Spiel ist heller, weils kein 1.0 Gamma verwendet. Sei es durch dir, oder vom Spiel vorgegeben.
    => Handbrake erkennt dein lagarith YV12 als RGB32 an - den Fehler haben leider einige Decoder, das AVI Quellen als RGB32 erkannt werden :/ Dann wäre die Aufhellung klar.
    => DXTory YUV420 erkennt Handbrake korrekt und das Bild kommt dir zu dunkel vor weil siehe ersten => punkt.
    Aktuelle Projekte/Videos


    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von De-M-oN ()