leicht matschiges Bild bei mp4 und VHS Capture

  • Es gab sicher schon einige Beiträge zu meinem Problem, nur diese zu finden ist manchmal nicht so einfach,

    Daher könnte ich hier nochmal Hilfe gebrauchen.
    Ich deinterlace meine Videos mit QTGMC. Was auch super funktioniert.
    Schaue ich mir die Videos noch nicht encoded über QTGMC und VDub oder den MediaPlayer Classic an sieht alles wunderbar aus.
    Nach dem encoden mit XMediaRecode geht aber einiges an Details verloren.
    Ich wandel immer mit konstanter Qualität (19) und bei Tune habe ich schon auf Grain umgestellt was auch schon einiges bringt.
    Allerdings wird immer noch jede Menge Bildrauschen weggerechnet. Was das Bild leicht unnatürlich/matschig erscheinen läßt.
    Läßt sich da vieleicht noch etwas machen? Auf die Dateigröße kommt es mir dabei nicht unbedingt an. Denn diese sind für mich schon erschreckend klein.
    Mit dem Qualitätswert bin ich auch schon runter gegangen. Da tut sich aber gar nichts. :(

  • Du schreibst leider nur was zum Container (MP4), aber nichts zum verwendeten Videocodec. Falls das x265 sein sollte: Das SAO kann hier für stärkeren Detailverlust verantwortlich sein. Das kann man deaktivieren. Bei x264 gibt es einen so kräftigen Filter nicht.

  • tach auch !

    Und wenn das Video Interlaced ist und man de-interlaced gehen ~ 50% der Bewegungsinformationen verloren und werden durch oft matchiges überblenden der Halbbilder ersetzt . (< das ist strak vereinfacht)

    Wenn man das dann noch strak filtert/komprimiert wird das Bild wesentlich schlechter.

  • Ja genau, x265 meinte ich. Ich werde das einmal ausprobieren.
    Mir hat sich noch nicht so richtig der Zusammenhang zwischen dem Bitratenwert und dem Preset erschlossen.
    Mit einem niedrigem Wert erziele ich eine höhere Bitrate als mit einem hohem Wert.
    Welche Rolle spielt dann noch das Preset? Ich habe das Preset immer auf "langsamer" gestellt.
    Ich habe es jetzt mal umgestellt auf "schnell". Momentan läuft es noch aber ich kann mir vorstellen das ich bei meinem VHS-Rip

    keinen großen Unterschied bemerken merke.


    bergh


    Vielleicht bilde ich es mir nur ein ein oder ich bin einfach nur zu pingelig aber

    ich kann mich nicht errinnern das ich bei MPEG2 solche Veränderungen im Bild hatte.


    Gruß Stefan

  • Die Presets regeln, welche Methoden der Encoder nutzen darf, um nach Ähnlichkeiten zu suchen. Langsamere Presets erlauben Methoden, die mehr Zeit brauchen, aber auch häufig bessere Übereinstimmungen finden. Das kann die Effizienz (Qualitätserhalt pro Bitrate) verbessern; muss aber nicht zwingend (hängt ein wenig vom Videomaterial ab). Ziemlich sicher sind die Schwankungen zwischen den Presets bei sonst gleichen Einstellungen aber eher gering, im Vergleich zu einer Bitratenvorgabe für 2-pass-Encodierung oder einer Qualitätsvorgabe.


    Ein kleinerer CRF-Wert sorgt bei 1-pass-Qualitäts-Encodierung zuverlässiger für höhere Bitraten, aber auch für besseren Qualitätserhalt. Aber bei 2-pass-Encodierung mit vorgegebener Zielbitrate versucht der Encoder immer, die Zielbitrate zu erreichen. Dann kann ein langsameres Preset nur dabei helfen, in der vorgegebenen Bitrate vielleicht mehr Qualität zu erhalten.


    Die schlechteste Wahl für ein späteres Abspielen von schnellen Datenträgern ist 1-pass-Encodierung mit mittlerer Bitrate. Diese Variante ist notwendig beim Videostreaming über eine Leitung mit begrenzter Datenrate. Dabei wird die Schwankung der Bitrate eher gering gehalten. Das bedeutet aber, dass die Qualität stattdessen stärker schwanken muss.

  • Hallo,


    hier wäre mal ein Sample.




    Zum Vergleich lasse ich das Video einmal mit dem Preset "very fast" und einmal als mp4 gleichzeitig laufen.

    Man sieht beim Vergleich das ein Teil des Bildrauschens fehlt. Damit gehen natürlich auch einige Details flöten.
    Ich habe hier zum Teil sehr schlechtes Videomaterial. Da macht sich das Ganze noch stärker bemerkbar.
    Die fertigen Filme haben anschließend eine Größe von ca. 1GB/h.

    Da Speicherplatz heute keine große Rolle mehr spielt, ist die Größe für mich auch eher zweitrangig.


    Zitat

    Bei was für einer Datenrate,...


    Das waren damals glaube ich 6-8 Mb/s mit dem Procoder.


    LigH Danke für die Erklärung.

  • Zitat

    Format profile : Main@L3.1

    Writing library : x264 core 161 r3048

    Encoding settings : cabac=1 / ref=8 / deblock=1:-3:-3 / analyse=0x1:0x131 / me=umh / subme=9 / psy=1 / psy_rd=2.00:0.70 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=2 / 8x8dct=0 / cqm=0 / deadzone=6,6 / fast_pskip=1 / chroma_qp_offset=-4 / threads=18 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=0 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=0 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=60 / rc=crf / mbtree=1 / crf=19.0 / qcomp=0.80 / qpmin=10 / qpmax=69 / qpstep=4 / vbv_maxrate=2400 / vbv_bufsize=14000 / crf_max=0.0 / nal_hrd=none / filler=0 / ip_ratio=1.10 / aq=3:1.20

    Ist aber kein x265, wie oben erwähnt. Sondern x264.

    Default x264 Werte sind das auch nicht unbedingt. Hast du die absichtlich so eingestellt, oder von irgendwo übernommen?

  • Anhand von monarc99s Post sieht man, dass vbv_maxrate ziemlich tief ist. Falls ich mich nicht täusche wird auch wenn man CRF einsetzt mittels VBV Werten gecappt. Das heisst: bei tiefen VBV Werten wird nicht mehr Bitrate zur Verfügung gestellt, auch wenn CRF gerne mehr hätte.


    Sieht man mit dem Programm Bitrate Viewer 2.3 sehr gut. 2500kbps average sind eindeutig zu wenig. Ich selbst habe die VBV Werte in Xmedia Recode sehr hoch eingestellt, sodass ja keine Begrenzung stattfindet. Bei "Ameisenrennen" wird meistens trotzdem hohe Bitrate eingesetzt, weshalb VBV mit einem hardcap doch teilweise sinnvoll ist.

    Zu finden ist das in XMedia Recode unter Video -> Bitratensteuerung -> VBV Puffergrösse und VBV Maximum Bitrate. Ich habe beides auf 30'000 eingestellt für VHS. Weitere Einstellungen, die vielleicht Sinn machen:
    - CRF Wert 16 (ist schon fast overkill, aber Speicher hat man eh genug)

    - Profil: High

    - Level: Auto

    - Preset: Langsam oder Langsamer

    Tune würd ich nicht verwenden, auch wenns stark rauscht.

  • Danke für die Analyse. Gut, dass du dich mit XMedia Recode auskennst. Dass da niedrige VBV-Werte voreingestellt sind, könnte damit zusammenhängen, dass das Ergebnis irgendwie kompatibel zu eingeschränkten Playern oder Übertragungswegen sein soll...

  • Hallo die Herren! :)


    Zitat

    Ist aber kein x265, wie oben erwähnt. Sondern x264.


    :/


    Zitat

    Hast du die absichtlich so eingestellt, oder von irgendwo übernommen?


    Das Profil Main sollte doch richtig sein. High trifft doch für HD-Videos zu oder nicht?

    Wie ich auf das Level 3.1 gekommen bin frage ich mich jetzt auch.

    Ich denke ich bin wohl in der Zeile verrutscht.



    Die Tabelle stammt von Wikipedia.
    Die nachfolgende vom doom9-Forum und jetzt wird es wieder verwirrend für mich.



    Verschiedene Levels, Bitraten und zusätzlich noch die Unterteilung in progressive und interlaced.


    :?:


    Zitat

    Kann ich mir eigentlich nicht vorstellen, dass das ohne zusätzliche Filterung bei MPEG-2 mit 6-8 MBit nicht ewig viele Makroblöcke hat.

    Das Rauschen frisst da die Datenrate. :)


    Vielleicht spielt mir meine Erinnerung auch einen Streich. Das Ganze liegt nun schon einige Jahre zurück. :)


    Ich habe eben nochmal einen Vergleich gemacht.
    Die max. Bitrate und Puffergröße die ich einstellen konnte waren 14 Mb/s . Beim crf-Wert bin ich auf 16 runter gegangen und das Preset habe ich auf sehr langsam eingestellt.
    Die Dateigröße hat sich jetzt zwar vervierfacht aber die Unterschiede sind immernoch vorhanden.

    Die Unterschiede zum Sample mit 2,4 Mb/s sind auch nur marginal. Man muß wirklich schon sehr genau hingucken.

  • Die Profile@Level beschreiben Grenzwerte für Fähigkeiten eines Decoders. Zwischen Main und High gibt es bei AVC nur recht geringe Unterschiede nach unterstützten Technologien, es spielt aber keine Rolle, ob man Main oder High Profile für SD- oder HD-Auflösungen zulässt, nur die Fähigkeiten von Encoder und Decoder könnten High u.U. ausschließen.


    Die Tabellen von doom9 beziehen sich auf Kompatibilität zum Blu-ray-Standard. Der hat eine gewisse Beziehung zum AVC-Level, aber noch weitere VBV-Grenzwerte, die sich aus Eigenschaften des Decodierpuffers, der Decodiergeschwindigkeit und dem Ausleseverhalten von optischen Blu-ray-Discs ergeben. Wenn man sich das Video in Zukunft ganz bestimmt sowieso auf einem leistungsstarken PC anschauen will, muss man diese Grenzen nicht beachten. Bei der hohen Geschwindigkeit, mit der Festplatten ausgelesen werden können (auch SuperSpeed USB 3), und dem riesigen Hauptspeicher, der als Decodierpuffer verfügbar ist, spielt eine Einschränkung mit VBV für das Abspielen am PC keine merkliche Rolle.

  • Hallo,


    ich melde mich nochmal zurück.

    Ich habe jetzt unzählige Vergleiche angestellt.
    Die Erhöhung der Bitrate hat schonmal etwas gebracht.
    Ich habe nun aber auch mal einen Vergleich zwischen den beiden QTGMC-Einstellungen gemacht.
    Merkwürdigerweise enthält das Bild mit "very fast" mehr Details als das mit den lossless-Einstellungen.
    Besonders auffällig ist es an dem Betonpfeiler in der Mitte des Bildes zu sehen.

    Während man auf einem Bild noch den Zaun erkennt ( zumindest lässt er sich erahnen :-) ) ist auf dem anderen Bild kaum noch etwas davon zu sehen.

    Könnt Ihr Euch darauf einen Reim machen?

    Hier wären die beiden Bilder nochmal als Download.
    Auf dem Desktop ist das Ganze beim hin-und herschalten besser zu sehen.


    https://we.tl/t-e9MJvpa1bQ


    Code
    1. QTGMC( Preset="very fast" )
    2. QTGMC( Preset="slow", SourceMatch=3, Sharpness=0.05, Lossless=2 )


    @Cedimedi Wenn ich Tune/Grain deaktiviere erreiche ich doch das Gegenteil?!

  • @Cedimedi Wenn ich Tune/Grain deaktiviere erreiche ich doch das Gegenteil?!

    Ja, mit Tune: Grain versucht der Encoder möglichst, das Rauschen vom Originalclip zu behalten. Oft geht das aber schief, so dass nur noch unnötig mehr Rauschen hinzugefügt wird oder die Bitrate massiv höher wird. Ist glaube ich stark abhängig vom Ausgangsmaterial und ist denke ich eher für echte Filmkörnung optimiert. Deshalb empfehlen viele, gar keinen Tune zu verwenden. Aber da wird dir jeder irgendetwas anderes sagen. ;) Am besten selbst ausprobieren.


    Wegen QTGMC weiss ich nicht genau. Wenn die Sharpness nicht überschrieben wird, ist der Standard-Wert "1.0". Je höherer Wert, desto mehr Schärfefilter wird angewandt. Vielleicht liegt es daran, dass dadurch der Zaun "besser" sichtbar ist. Aber QTGMC ist halt auch stark ausgelegt, Rauschen zu entfernen. Auch sind viele Einstellungen in einem einzelnen Frame nicht zu erkennen / vergleichbar, da sie nur Auswirkungen auf Bildbewegungen haben. Ich habe selbst schon lange aufgegeben, irgendwelche optimalen Einstellungen in QTGMC zu finden, da man da sowieso teilweise nichts sieht und nur halb wahnsinnig wird. :D Ich habe jetzt nur einfach preset "slower" oder "slow" drin und fertig.


    Du hast weiter oben auch noch SelectEven() im Skript. Ist das so gewollt? Da geht ja die Hälfte der Frames verloren (50FPS -> 25FPS). Das sogenannte Bobbing von QTGMC ist meiner Meinung nach eines der besten Features gegenüber anderen stumpfen Deinterlacern.

  • Lasse ich Grain weg bekommt das Bild meiner Meinung nach einen plastischen Look.


    Zitat


    da man da sowieso teilweise nichts sieht und nur halb wahnsinnig wird


    :D

    Da muß ich Dir allerdings recht geben. Ich habe auch schon sehr viel Zeit mit den Einstellungen von QTGMC verbracht.


    Was SelectEven() angeht bin ich mir inzwischen auch nicht mehr sicher.
    Gerade weil der Deinterlacer so gut ist habe ich es beim Standart von 25fps belassen.
    Ich war mir bisher auch nicht sicher ob ein 50fps Video auch überall einwandfrei läuft.
    Einen Vergleich zwischen 50 und 25 habe ich allerdings noch nicht gemacht.
    Vielleicht sollte ich das mal machen. Dann gehe ich mit der Bitrate aber wieder runter. :)