Farbumfang erhalten

  • So, dann will ich mich mal als Neuling outen.

    Ich habe mir kürlich eine Panasonic TZ7 geholt und nehme damit recht zufrieden Videos auf. Diese sind mir allerdings zu groß, weswegen ich sie mit MeGUI umwandele.

    Mein Problem: Das finale Video ist zwar von der Größe perfekt, aber die Farben sind mies. Zu starker Kontrast und leicht bläulich.

    Da besagtes Video schon alleine durch das Öffnen über AVS (DirectShowSource) seinen Farbumfang verliert würde ich nun gerne wissen, welche Befehle es da gibt um eben diesen zu erhalten.

    Meine Gedanken gehen da in Richtung 4:2:0 und 4:2:2 oder hat das damit nichts zu tun? Als Quelle dient MJPEG 1280x720 30fps progressiv. Ich denke mal, daß dürfte RGB32 sein... (?) Wie finde ich das heraus, und vor allem, wie erhalte ich es?

    Vielen Dank schonmal im Voraus für eure Hilfe

  • Hallo
    GSpot kann Dir ein paar Angaben zeigen aber auch VirtualDub.

    Habe erst vor ein paar Tagen Streams bekommen von einer Panasonic TZ7.
    Habe aber keine Sicherungen mehr hier,musste sie ja nur in ein "Videoschnitt-taugliches" Format convertieren.
    Das Format ist doch AVCHD lite,Audio Dolby Stereo.

    Zitat

    Mein Problem: Das finale Video ist zwar von der Größe perfekt, aber die Farben sind mies.

    Welches finale Format?
    Hast Du einen kleinen Ausschnitt?

    Datenrettungen Normwandlungen Restaurierungen Digitalisierungen

  • Die TZ7 kann sowohl MJPEG als auch AVCHD. Letzteres nutze ich nicht, da die Dateigröße nur unwesentlich abnimmt, die Qualität hingegen sehr.

    GSpot sagt mir, es handele sich bei dem MJPEG-Format um Apple Photo JPEG, halt *.mov... Aber über Farbräume steht da nichts. VirtualDub zeigt nur ein dunkelblaues bzw. graues Bild anstelle des Videos wenn ich das AVS öffne. Ich wüsste auch nicht, wo ich dort nach der Farbtiefe suchen kann. Unter "Color Depth" stehen nur Output "RGB24" und der Input auf "Auto"

    Mit "finales" Video meine ich das in x264 neu kodierte Video. Das ist allerdings unwichtig, da diese Farbtiefenveränderung schon vorher auftritt.

    Es reicht, wenn ich das *.mov mit einem AVS-Script über "DirectShowSource" im Mediaplayer abspiele. Zwischen dem *.mov und dem *.avs liegen Welten.

    Das *.mov ist wärmer und hat mehr Dynamikumfang.
    Das *.avs hat leichten Blaustich und kappt die dunkleren Bereiche beinahe vollständig.

    Ich dachte das "Problem" sei bekannt... scheint ja irgendwas beim Öffnen über Directshow und Avisynth zu passieren, was die Farbtiefe reduziert.

    Das ist das gleiche, was passiert, wenn man ein AVI mit VirtualDub öffnet. Dort ist es allerdings umgekehrt, heller und freundlicher als im MediaPlayer.

    ---
    Nachtrag:
    Achja, wegen einem Ausschnitt. Das wird wohl nichts bringen, da ich ja nur das Ergebnis posten kann. Selbst wenn ich mit VD eine DirectStream-Copy vom geöffneten AVS mache. Das was dabei rauskommt ist genau das Gleiche, Müll gegen das Original. Wenn mir jemand sagt wie ich einen Screenshot vom MediaPlayer machen kann, wäre ich seelig.

    ---
    Nachtrag2:
    Das mit den Screenshots geht jetzt, nützt aber nichts, da lediglich der Shot vom ORiginal, also vom *.mov korrekt aussieht. Der Screenshot des "AVS-Videos" ist nicht so wie das Video aussieht. Lediglich die Kontrastabweichung scheint annähernd korrekt dargesetellt zu werden.

    2 Mal editiert, zuletzt von rodgar (25. Juni 2009 um 02:42)

  • :welcome:

    Meine Gedanken gehen da in Richtung 4:2:0 und 4:2:2 oder hat das damit nichts zu tun? Als Quelle dient MJPEG 1280x720 30fps progressiv. Ich denke mal, daß dürfte RGB32 sein... (?) Wie finde ich das heraus, und vor allem, wie erhalte ich es?


    Schau mal mit MediaInfo rein.

    Screenshot über die Zwischenablage machen? (Taste Druck bzw. PrintScreen)

    Womit spielst Du das Original ,um es zu vergleichen, denn ab, welcher Decoder wird benutzt zum abspielen. Wenn möglich sollte man den gleichen Decoder für die VfW-Schnittstelle bzw. DirectShow aktivieren.

    mawi2006

    Intel Q9550@2500 MHz / Motherboard Name Asus P5N-VM WS / Grafikkarte NVIDIA Quattro FX470 / 4x2 GB 800 MHz / DVD-RAM DVR-216DBK / LiteOn IHas 322 / HDD: 500 GB HD502HJ / SSD: Solidata K5 64GB

  • Ok, es liegt irgendwie an... ja, was eigentlich... liegt es an DirectX?

    Sehr merkwürdige Sache:
    Öffne ich das AVS im MPC ist es wie gesagt recht ekelhaft anzuschauen.
    Öffne ich es nun parrallel in einer 2ten Instanz des MPC, sieht es genauso aus wie das Original.
    Ein und das selbe Video sieht also in einem Fenster so und im anderen Fenster komplett anders aus.

    Das Gleiche gilt für den VLC-Player. Dort allerdings für das fertig kodierte mp4, da er das avs nicht lesen kann. In der ersten Instanz sieht das Video wie das AVS übel aus, in der 2ten Instanz wie das Original.

    Das Video sieht also nur dann korrekt aus, wenn man es 2mal hintereinander öffnet und dabei die erste Instanz nicht vorher schließt.

    Auch wenn es mittlerweile total am Thema vorbeigeht, weiß einer was das ist?

    Für mich wirkt das so, als benutze er im ersten Anlauf irgendeine Ressource, die er dann beim öffnen der 2ten Instanz nicht mehr nutzen kann. Ergo öffnet er diese mit einer anderen Ressource. Sinnvoll wäre es jetzt diese Ressource rauszufinden. Codec schließe ich aus, da das sowohl bei mp4 (x264) als auch bei mov (MJPEG) passiert.
    Wenn das so stimmt, müsste beim Schließen der 1ten Instanz (die in der der Blaustich ist!) und beim offen halten der 2ten Instanz (Die mit den "anständigen" Farben) diese Ressource wieder frei werden. Ein erneutes Öffnen einer anderen Instanz müsste also erneut ein Video mit "schlechter" Farbe zeigen, und genau so ist es.

    mawi2006
    Das mit der Druck-Taste geht bei Videos im MPC nicht.
    Ich habe ffdshow installiert, VLC-Player, Quicktime Alternative und MPC Homecinema. Ich habe keine Ahnung auf welche Codecs er zurück greift wenn er in einem AVS über DirectShowSource ein MJPEG QuicktimeVideo erhält. Wahrscheinlich Quicktime.
    Aber wie gesagt, das Problem zeigt sich auch beim fertigen MP4 (x264 und AAC). Am Codec kanns also nicht liegen.

    4 Mal editiert, zuletzt von rodgar (25. Juni 2009 um 03:44)

  • Die Sache mit den 2 Instanzen hat folgenden Hintergrund, die erste Instamz benutzt Overlay zum rendern, Overlay kann aber nur einmal verwendet werden.

    Wenn Du das Video in MPC abspielst, sollte ein Rechtsklick mit der Maus Dir zeigen, welche Filter (Decoder) verwendet werden.

    Leider ist das nun nicht gerade mein Spezialgebiet, gebe mehr oder weniger das wieder, was ich hier im Forum bereits mitgelesen habe.

    Wirst Dich wohl gedulden müssen, bis LigH oder ein anderer Spezi hier wieder online ist.

    mawi2006

    Intel Q9550@2500 MHz / Motherboard Name Asus P5N-VM WS / Grafikkarte NVIDIA Quattro FX470 / 4x2 GB 800 MHz / DVD-RAM DVR-216DBK / LiteOn IHas 322 / HDD: 500 GB HD502HJ / SSD: Solidata K5 64GB

  • Bei "leicht bläulich" frage ich lieber gleich nach: Eventuell eher so, dass "rötlich" und "bläulich" gegeneinander vertauscht sind? (suche nach "SwapUV" im Zusammenhang mit AviSynth)

    Wenn Overlay im Spiel ist, kann es natürlich auch daran liegen, dass die Darstellungsoptionen im Grafikkartentreiber etwas verstellt sind. Das kann manchmal sogar bei Updates über mehrere Generationen von Grafikkartentreibern hinweg passieren. Gerade der MPC erlaubt die Wahl zwischen mehreren Renderern, statt Hardware-Overlay ist ein Vergleich mit VMR9-Renderless sicher interessant.

    Normalerweise ist Overlay mit Abstand die schnellste Methode; VMR9 verwendet 3D-Beschleuniger-Funktionen und ist auch recht schnell. Beide können - je nach Grafikkarte und Treiber - ihre eigenen Einschränkungen aufweisen.

  • Da kommen wir der Lösung ja schon näher. Overlay...
    Also mit VMR9 (renderless und 3D) klappts zwar beim MP4, beim AVS hingegen nicht. Das AVS bekomme ich manchmal mit VMR7 (windowed oder renderless 2D oder 3D) korrekt zum laufen, manchmal aber auch nicht. Mit allen anderen geht es nie.

    Exakt gleich sind die Farben bzw. der Kontrast allerdings selbst dann noch nicht. Damit kann ich allerdings leben. Würde mich jedoch brennend interessieren, wie man diesen Rest an Abweichung auch noch weg bekommt. Hier mal der Vergleich (Screenshot vom echten Overlay fällt leider aus, es sei denn einer weiß wie ich den bekomme)

    Bild1 - Original
    Bild2 - AVS und MP4 von MeGUI
    Bild3 - MP4 von FormatFactory
    Bild4 - Pseudo-Overlay (Mit PS nachgeahmt)

    Für mich stellt sich das mit dem Overlay momentan wie folgt dar:
    Wenn das MOV über das AVS aufgerufen wird, wird es zu einer DirectShow-"Komponente" wodurch es einen anderen Renderer durchläuft als wenn es ohne AVS abgespielt wird, ist das korrekt?

    Gibt es denn da irgendwas, was ich verstellen kann (evtl. bezgl. Grafikkartentreiber) oder sonst etwas, womit ich das dauerhaft gelöst bekomme?
    Die Sache mit VMR7 ist zwar ok für den MPC, aber andere Player wie der VLC stellen es ja dennoch falsch dar.

    mawi2006
    Die Filter sind nur beim AVS auswählbar, beim MOV ist Filters ausgegraut.
    Dennoch, fürs AVS wird dort der AVI-Decompressor angezeigt und über ihn YV12. Kann das stimmen? Ich dachte immer MotionJPEG sei RGB...

    Nachtrag:
    -----------
    Die Sache mit dem Overlay läßt sich ändern indem man in der NVIDIA Systemsteuerung bei Video-Farbeinstellungen von "Video-Player-Einstellungen" auf "Nvidia-Einstellungen" wechselt. Dann werden alle Videos mit korrekter Farbe abgespielt. Ist das sinnvoll dies dauerhaft zu ändern? ... Diese maginalen Farbveränderungen zwischen AVS, original, MP4 von FormatFactory und MP4 von MeGUI wie oben beschrieben bleiben allerdings auch so weiterhin bestehen.

    Nachtrag2:
    -----------
    Das mit dem Kontrastumfang läßt sich durch die Dynamikumfangeinstellung klären. Das Original und FormatFactory ist für 0-255 ausgelegt, das AVS und das von MeGUI für 16-235. Die Bilder oben sind Screenshots bei 16-235 (!) da das anscheinend Standard ist.

    Somit wäre fast alles geklärt. Ich muss nur auf 16-235 stellen und NVIDIA die Farbeinstellungen überlassen um mit dem MeGUI-MP4 zufrieden zu sein...

    Die kleinere übrige Farbänderung wie zwischen Bild1 und Bild2 erklärt sich dadurch für mich aber weiterhin nicht. Auch verstehe ich nicht, wieso "DirectShowSource" das Quellvideo im Dynamikumfang von 0-255 auf 16-235 beschneidet.

    Nachtrag3:
    -----------
    Prima, jetzt dachte ich, daß die NVidia-Systemsteuerung dem Overlay-Problem ein Ende bereitet hätte... Geht aber nur solange sie geöffnet ist. Schließe ich das Fenster, ist alles beim alten. Nur wenn ich das Fenster der NVIDIA-Systemsteuerung geöffnet habe und dort auf der Einstellung "Video-Farbeinstellungen" bleibe, spielt er das Overlay korrekt ab. Gehe ich in einen anderen Menüpunkt und öffne das Video erneut, wird es wieder falsch abgespielt... Was sagt man dazu? :)

    Hoffe ihr habt noch ein/zwei Ideen, mir sind meine grade ausgegangen...

    13 Mal editiert, zuletzt von rodgar (25. Juni 2009 um 14:48)

  • Bezüglich des 0-255 und 16-235 Propblems hab ich jetzt auf einer englischen Seite gelesen, daß man dies mit folgendem Befehl beheben kann:
    ConvertToYV12(matrix="PC.709") oder PC.601

    Allerdings geht das nicht, da Avisynth mir sagt, daß "matrix" RGB vorraussetzt. Ich hab die passende Version 2.56, bei der das angeblich gehen soll installiert.

    Was die VErsionen von aviysynth angeht bin ich eh etwas verwirrt. Auf der offiziellen Seite steht es gäbe eine Version 2.6 mit der man converttoyv24() machen kann.
    Ebenfalls auf der offiziellen Seite kann man aber keine Version 2.6 runterladen...

  • Zitat

    Hier mal der Vergleich (Screenshot vom echten Overlay fällt leider aus, es sei denn einer weiß wie ich den bekomme)


    Bild 4


    2 mal mpc starten und dann ab dem 2.mpc einen Screen mit Printkey2000 erstellen.
    http://www.ww-consulting.ch/_DL/Test.jpg

    Farben sind m.E. Okay.
    Auf dem Studiokontroll-Monitor sind die Farben etwas weniger "Bunt"

    Datenrettungen Normwandlungen Restaurierungen Digitalisierungen

  • Wenn es wirklich schon eine Version 2.6 geben sollte, dann wahrscheinlich bisher nur als Quelltext, den man sich selber mit einem C++-Compiler übersetzen müsste - und dann nicht mit voller Kompatibilität zu sämtlichen 2.5x-Plugins rechnen darf.

    Freigegebene (Release-) Versionen existieren bisher auf der SourceForge-Projektseite "avisynth2" bis Version 2.58; jedoch ist für manche Filter und Anwendungen immer noch Version 2.57 zu bevorzugen.

    Schon in diesen Versionen gibt es einige Funktionen, die durchaus die unterschiedlichen Farbigkeits- und Helligkeitsbereiche beachten können, beispielsweise die Funktion "ColorYUV" und "Tweak", sowie der Parameter "coring" in einigen weiteren Funktionen.

    Jedoch ist es eigentlich sinnvoll, die Wertebereiche begrenzt zu halten, wenn man die Ausgabe an Videocodecs bzw. Encoder weiterleitet, weil viele solcher Routinen von eben diesen Grenzen ausgehen und erwarten, dass der Player bei der Wiedergabe für eine entsprechende Streckung sorgt.

  • Hat keiner eine Idee wie ich das mit dem Overlay und dem gestauchten Dynamikumfang dauerhaft lösen kann?

    Goldwingfahrer
    Das geht nicht, weil die 2te Instanz kein Overlay mehr ist - Es geht um Videos, nicht um JPG. Ist aber auch nicht so wichtig, weils mit Photoshop ganz gut gelungen ist... Ich verstehe allerdings nicht, wieso du meinst, daß die Farben ok sind. Jedes der Bilder sieht anders aus, es sollte aber jedes genau gleich aussehen. Solange das nicht der Fall ist, ist auch nichts ok.

  • Vllt. hilft Dir ja der Avisynthfilter levels(0,1.0,255,0,255) ein wenig. Dort kann man die absoluten Schwarz- und Weißwerte für Input sowie Output als Integer angeben, mit dem zweiten Parameter als Float die Helligkeit verändern. Die Sättigung kannst Du mit tweak(sat=1.0) als Float beeinflussen. Schau Dir dazu mal die Avisynthdokumentation an.

    mawi2006

    Intel Q9550@2500 MHz / Motherboard Name Asus P5N-VM WS / Grafikkarte NVIDIA Quattro FX470 / 4x2 GB 800 MHz / DVD-RAM DVR-216DBK / LiteOn IHas 322 / HDD: 500 GB HD502HJ / SSD: Solidata K5 64GB

  • Zum gestörten Overlay:
    -----------------------
    Wie gesagt, der Grafikkartentreiber erlaubt zwar das Einstellen... Es ist nicht nur Sättigung, sondern eher ein Mix aus Kontrast, Helligkeit und Farbton, aber soweit muss ich garnicht gehen, sondern lediglich die Player-Einstellungen überschreiben. Sobald dies durch die NVIDIA-Systemsteuerung geschieht, ist alles bestens (Link) bis auf die kleineren Abweichungen. Allerdings - wie beschrieben - nur solange dieses Einstellungen-Fenster geöffnet ist. Sobald es geschlossen wird, ist alles beim Alten (Bug im Treiber?)

    Zu den kleineren Kontrast- und Farbverschiebungen
    ----------------------------------------------------
    Das mit levels(0,1.0,255,0,255) probier ich jetzt mal aus... (Danke mawi2006)
    Hab auch was davon gelesen, daß 0-255 ein komplett anderer Farbraum ist als 16-235. In dem Fall wundert es mich dann auch nicht, wieso sich auch die Farbe leicht ändert und nicht nur der Kontrast. Hoffe das levels das behebt...

    Nachtrag:
    Gleiches Ergebnis, trotz "levels" :(
    Original MOV
    AVS und MP4
    Kann doch nicht sein, daß ich der einzige mit dem Problem bin, oder etwa doch?

    Frage zum Overlay:
    -------------------
    Was ich nicht verstehe: Wieso liefert der Overlay-Modus nur beim AVS und bei den MP4 falsche Daten. Beim Origina-MOV aber nicht??

    7 Mal editiert, zuletzt von rodgar (29. Juni 2009 um 00:49)

  • Levels(0,1.0,255,0,255) - verändert gar nichts: Den Wertebereich von [0,255] auf [0,255] "ändern" ändert nichts, ebensowenig ein Gamma-Wert von 1.0; auch Tweak(sat=1.0) verändert die Farbsättigung nicht. Die Funktionen zu kennen ist sicher gut, aber die Werte müssten herausgearbeitet werden.

    Wollte man z.B. "TV-Range" (16-235) auf "PC-Range" (0-255) mit der Funktion 'Levels()' strecken, wäre dafür eventuell in etwa 'Levels(16, 1.0, 235, 0, 255, coring=false)' nötig (standardmäßig nicht deaktiviertes coring begrenzt den Umfang sonst wieder auf 16-235). Wahrscheinlich würde dann aber auch ein Gamma-Wert sinnvoll sein, der größer als 1.0 ist (etwa 1.3 bis 1.5).

    Einfacher ginge es jedoch mit: 'ColorYUV(levels="TV->PC")'.
    __

    "TV-Range" ist kein "komplett anderer Farbraum". Nur ein begrenzter Bereich darin. Der "Farbraum" ist immer noch YUV (z.B. im Gegensatz zu RGB).
    __

    Quicktime-Movies werden nicht per DirectShow abgespielt. Hier wird also nicht der Renderer benutzt, der im MPC eingestellt ist, sondern der, den Quicktime verwendet.

  • Danke LigH, das mit ColorYUV(levels="TV->PC") hat zummindest beim Kontrastumfang geholfen. Allerdings musste TV und PC vertauscht werden, sonst war der Kontrast nochmal höher als eh schon zuvor. Der Farbton ist allerdings immer noch leicht verschoben.

    Bei 0-255 in der NVIDIA-Systemsteuerung sieht das nun so aus:
    Original MOV
    AVS mit ColorYUV(levels="PC->TV")
    AVS mit ColorYUV(levels="TV->PC")

    Bei 16-235 in der NVIDIA-Systemsteuerung so:
    Original MOV
    AVS mit ColorYUV(levels="PC->TV")
    AVS mit ColorYUV(levels="TV->PC")

    Also müsste ich auf 0-255 stellen oder halt nix im AVS ändern und dann auf 16-235. Jetzt brauche ich nur noch eine Lösung für die Farbabweichung sowie das Overlay-Problem.

    Nachtrag:
    ----------
    Merkwürdig, manchmal, wenn ich mehrere Instanzen vom MPC zum Vergleich der AVS' mit dem Original offen habe, springt die Farbgebung des Originals plötzlich um und sieht genauso aus wie die der AVS'. Ist das evtl. ein Bug im NVIDIA-Treiber?
    Nicht das ich jetzt diesen Farbausgleich erzwinge nur um dann festzustellen, daß auf diesem System zwar nun alles gleich aussieht auf einem anderen System das Original aber erneut vom AVS abweicht.

    Nachtrag2:
    -----------
    Ist genauso wie befürchtet. Diese leichte Farbtonabweichung hab ich nur hier auf meine PC. Auf allen anderen Maschinen sieht es nach dem Befehl ColorYUV(levels="PC->TV") exakt aus wie das Original. Auch dieses merkwürdige Overlay-Problem haben die nicht. Der NVIDIA-Treiber ist exakt der Selbe wie bei mir... Nur die Graka sind andere. Schon sehr seltsam.

    4 Mal editiert, zuletzt von rodgar (29. Juni 2009 um 13:08)

  • Farbton? ... Also gelb => orange oder gelb => gelbgrün?

    Das sollte Tweak(hue) schaffen.

    Und dass nur der erste MPC Overlay verwenden kann, und alle anderen sich eine andere Technik suchen müssen, haben wir doch schon dutzende Male erklärt. Das "Umspringen" während der Wiedergabe versundert mich allerdings.

  • Zitat

    Und dass nur der erste MPC Overlay verwenden kann, und alle anderen sich eine andere Technik suchen müssen, haben wir doch schon dutzende Male erklärt.

    Dagegen hab ich doch garnichts gesagt :)

    Du siehst ja im Screenshot, daß das Original und das AVS farblich voneinander abweichen. Das ist seltsamerweise aber nicht immer so. Wie gesagt, das Original springt dann plötzlich einfach um und es gibt keine Abweichungen mehr. Das gilt auch für den OverlayModus. Meistens sieht der so aus wie auf dem mit PS nachgebauten Pseudo-Screenshot, manchmal aber auch nicht. Irgendwas stimmt an meinem System hier nicht. Wahrscheinlich Zusammenspiel von Grafikkarte und Treiber, keine Ahnung.

    Nachtrag:
    -----------
    Hier mal der Link, in dem von 2 verschiedenen Farbräumen geredet wird wenn es um 16-235 und 0-255 geht: Link

    Einmal editiert, zuletzt von rodgar (29. Juni 2009 um 14:44)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!