Interlaced - ein paar Fragen bzgl. Deinterlacing und Encoding

  • Hi,

    ich bin jetzt seit ein paar Tagen dabei mir alle möglichen Informationen/Tutorials zum Thema HQ DVD Backup anzusehen, und habe mir vorgenommen mich an die meisten Dinge in Brother John's Encoding Wissen zu halten.

    Ich möchte MKV's mit H264+AC3 erstellen, primär sollten sie auf einem WDTV Player abgespielt werden.

    Im Encoding Wissen steht "Der Normalfall ist ein Deinterlacing vor dem Encoding, um progressives Material zu erhalten" ... "Empfehlungen zum richtigen Deinterlacing kann ich mangels Erfahrung leider keine geben"

    Und damit geht es dann auch schon los mit meinen fragen.....

    A) Gibt es ein Tool das mir zuverlässig und automatisch sagt ob das Material auf der DVD wirklich interlaced ist?

    B) Wenn ja, verrät es mir auch was für ein Interlace Typ es ist?

    C) Wenn das Material Interlaced ist, woher weiß ich welchen Filter ich passend zum deinterlacen brauche?

    Das ganze ist ja doch komplexer als ich dachte - darum gibt es hier ja auch schon genug Threads zu dem Thema, die meine ganzen Fragen aber letztlich nicht wirklich beantwortet haben, bzw. für diese schnelllebige Zeit relativ alt sind, also vielleicht nicht mehr den aktuellen Stand der Technik widerspiegeln.

    Wenn ich mir das recht überlege, folgt daraus letztendlich

    D) Warum lasse ich es nicht einfach interlaced? Mein Player muss ja auch beim DVD-ISO damit klarkommen, warum also nicht bei H264?

    Wäre super wenn mich hier jemand erleuchten könnte :)

    Vielen Dank im Voraus!

  • :welcome:

    a) Nein. Die Erkennung in DG(AVC)Index.exe oder in MeGUI ist schon recht zuverlässig, aber letztlich immer abhängig vom Inhalt. Wo man als Mensch schon kaum Unterschiede sieht, weil kaum horizontale Bewegungen zu bemerken sind, kann ein Programm auch nichts finden.

    b) Wenn die Erkennung relativ zuverlässig funktioniert, dann unterscheiden sie auch, ob sie typische Telecine-Muster finden, oder ob es Unregelmäßigkeiten gibt. Dennoch ist ein Vergleich mit den eigenen Augen und gebobbtem Video nicht zu unterschätzen.

    c) Relativ intelligente Deinterlacer wie TDeInt oder Yadif kann man fast ohne Bedenken verwenden - wenn es wicklich echtes Interlacing ist. Allerdings heißt das nicht, dass sie immer fehlerfrei arbeiten. Die Entscheidung, an welchen Stellen im Video ein Deinterlacing notwendig ist, um die Streifen zu vermeiden, und wo es nicht sinnvoll ist, weil es Details verringern würde, ist nicht trivial.

    d) Röhrenfernseher arbeiten interlaced, stellen also immer nur die Hälfte des Bildes streifenweise dar - DVD-Player können das also ohne weiteres passend ausgeben; die flüssige Darstellung ohne erkennbare Streifen entsteht durch das zeitliche Nacheinander der Halbbilder, das leichte Überstrahlen und die Nachleuchtdauer des Leuchtstoffes. HTDV-Fernseher (Plasma, LCD) arbeiten jedoch im Grunde progressiv (zeigen also die gesamte Bildfläche immer gleichzeitig an), da ist eine flüssige und streifenfreie Darstellung schwieriger. Ähnlich der PC-Monitor, der das gesamte Bild durchgängig zeichnet, ohne Streifen. Darüber hinaus gibt es für H.264 auch noch mehrere Arten, Interlacing zu speichern (z.B. PAFF = für komplette Bilder, MBAFF = für jeden Makroblock einzeln), aber nicht jeder Player kann jede Variante abspielen.

  • Hallo LigH,

    danke für die schnelle Antwort! :)

    Bzgl a) - macht StaxRip das auch? Bis jetzt hat mir StaxRip nie den Interlace-Filter vorgeschlagen wenn ich ein Video geöffnet habe - allerdings hat auch AutoGK, welches ich jetzt mal zum Testen verwendet habe, immer alles als progressive angesehen, auch wenn interlaced im header stand.

    Zu b) lieber selber prüfen - sollte ich mir mal zu Herzen nehmen :)
    Kann ich dafür auch einfach den VLCPlayer nehmen, mit deinterlace=disabled?
    Wenn nicht, oder auch trotzdem damit ich es weiß - was ein "gebobbtes" Video?

    Zu c) Klingt gut - wenn Interlace, dann einfach Yadif , und es passt hoffentlich :)

    Zu d) Natürlich geht es um LCD :) Aber angenommen ich würde das deinterlacen trotzdem den Player überlassen, weil er es ja auch, und vielleicht besser kann - muss ich dem x264 genauere Angaben machen als nur "--interlaced"?

    Danke! :)

  • a) Ich kenne StaxRip und AutoGK nicht wirklich gut. Ich gehe davon aus, dass man alles manuell einstellen muss, sofern man nicht in DG(AVC)Index das Video erst mal anspielt und schaut, wie sich die Analyse während der Vorschau entwickelt.

    b) Ein einfaches AviSynth-Skript verwenden, so wie ich es erst letzte Woche vorgeschlagen habe. Das mit VirtualDub anschauen. Auf wiederholende Muster (oder auch eher flüssigen Fortschritt) achten. Was "Bob()" macht - in der AviSynth-Dokumentation nachlesen!

    d) Der Player bzw. Fernseher deinterlacet sicher schlechter als Yadif oder TDeInt, denn er wird nur "blind" überblenden. Intelligentere Deinterlacer verwenden bereichsweise Bewegungsschätzungen, um auch den Inhalt von neu generierten Zwischenbildern zu interpolieren. Und selbst wenn du interlaced encodiren willst: x264 verwendet nur MBAFF (makroblockweise interlaced/progressiv je nach Bedarf).

  • Danke für die Erklärungen :)

    Das "Der Player bzw. Fernseher deinterlacet sicher schlechter als Yadif " ist ein guter Grund.

    Das mit AviSynth und Bob() werde ich mir mal ansehen.

    Bzgl. DGIndex: Da steht "Sequence" auf Field/Frame, und "Frame struct" bleibt immer auf Frame. Ich nehme an der "Frame struct" würde sich zwischendurch mal ändern, wenn es interlaced wäre? Oder würde sich auch "Sequence" ändern?

    Danke :)

  • Nein - "Sequence", "Frame struct" und "Frame Type" sollten wohl normalerweise ständig gleich bleiben. Diese Flags zeigen aber lediglich an, wie der Encoder eingestellt war. Die meisten DVD-Studios stellen ihre MPEG2-Encoder wahrscheinlich immer auf "Frame struct = Frame; Frame Type = Interlaced" ein, selbst wenn progressives Material vorliegen sollte (wenn das Material doch interlaced wäre, aber man hätte den Encoder auf "Frame Type = Progressiv" vergessen, wäre das Ergebnis grauenhaft; und "Frame struct = Field" ist nicht DVD-konform, glaube ich).

    Nein, im unteren Bereich des Statusfensters beim Abspielen dachte ich, mal eine Analyse gesehen zu haben (##% FILM / Telecine / Hybrid ...). Aber vielleicht gab es das nur in älteren Versionen (DVD2AVI), oder wird nur bei NTSC durchgeführt (Telecine = 3:2 Pulldown gibt es nur bei NTSC).

    Die MeGUI hat was passendes: Im "AviSynth Script Creator" (als "Video Input" die *.d2v-Indexdatei auswählen) gibt es im Reiter "Filters" einen Abschnitt "Deinterlacing", und darin den Button "Analyse...". Hierbei wird das Video anscheinend mit beiden Halbbild-Reihenfolgen auf die Charakteristik von Bewegungen getestet.

    Ich hatte einen kleinen Testfilm in PAL, was mir als "Hybrid film/interlaced, mostly interlaced" gemeldet wurde. Der Vorschlag, TIVTC zu verwenedn, ist aber definitiv falsch, weil PAL kein Telecine hat. Der Grund der Fehleinschätzung: Es handelte sich um einen Clip aus den Nachrichten mit überwiegend ruhigen Szehen, die nur den Sprecher zeigten, wo es also an analysierbarer Bewegung mangelte. Korrekt wäre in diesem Fall "Source Type: Partially Interlaced" und als Lösung einen der Deinterlacer (ohne Bob), die nur bei erkennbarem "Combing" (Streifenbildung) deinterlacen (Yadif, TDeint, LeakKernelDeint, TomsMoComp).

  • Zitat

    ....und "Frame struct = Field" ist nicht DVD-konform, glaube ich).


    Wenn Du mit "nicht DVD-Konform" meinst dass die herkömmlichen Brenntools
    "Frame struct = Field" nicht auf die DVD brennen können,so hast recht.
    IfoEdit ist das Einzige das es zuwege bringt dass die DVD dann auch abgespielt wird.

  • Fieldbased MPEG2 encoding ist nur von Vorteil, wenn die Quelle vorher nicht schon Framebased encodiert wurde.

    D.h. mit DV-Video oder normalen MPEG2 Quellen ist Fieldbased-encoding in der Regel schlechter als Framebased encoding.


    Fieldbased encoding ist nur von Vorteil, wenn man entweder analoge Quellen lossless vorliegen hat, oder etwa 720p50 oder 1080i50 auf PAL-interlaced reduzieren will.

  • Danke für die vielen Antworten :)

    Ich denke ich werde einfach folgendermaßen vorgehen:

    - öffnen mit DGIndex und D2V erzeugen
    - den erratenen frame type als Hinweis nehmen
    - öffnen in VDubMod mit Bob() und entspr. Szenen ansehen
    - Wenn interlaced, dann pauschal mit Yadif

    LigH sagte "...die nur bei erkennbarem "Combing" (Streifenbildung) deinterlacen (Yadif, TDeint, LeakKernelDeint, TomsMoComp)..."

    Ist einer der anderen vielleicht pauschal besser als Yadif?
    Und wenn er sowieso nur bei erkennbarem Combing etwas macht - was würde passieren wenn man ihn einfach blind immer dazu schaltet?

    Danke :)

    PS: Hat mal jemand in AutoMKV unter "Advanced Settings" den "Test Deint" Button ausprobiert?
    Macht eine sehr umfangreiche Analyse vom gesamten Video, dauert aber seeehr lange. Laut changelog wurde dort vor einiger Zeit mal bautdeint.exe gegen eigene Routinen ausgetauscht. (Siehe AutoDeint.jpg)

  • Ich habe mir jetzt angewöhnt die frames mit VDubMod und Bob() zu sichten....

    Trotzdem wüsste ich noch immer gerne:

    Zitat

    LigH sagte "...die nur bei erkennbarem "Combing" (Streifenbildung) deinterlacen (Yadif, TDeint, LeakKernelDeint, TomsMoComp)..."

    Ist einer der anderen vielleicht pauschal besser als Yadif?
    Und wenn er sowieso nur bei erkennbarem Combing etwas macht - was würde passieren wenn man ihn einfach blind immer dazu schaltet?

    Danke! :)

  • Also wie Didée mich erst vor kurzem korrigierte: Yadif ist nicht "intelligent", der interpoliert immer. :redface:

    TDeint ist in der Hinsicht vielleicht noch am empfehlenswertesten.

    Unfehlbar ist keiner. Vollautomatische Verarbeitung ist aber bei Video wirklich nicht einfach, und pauschale Allheilmittel so gut wie unmöglich zu finden oder zu schaffen.

  • Ich doch noch mal...

    Ich habe fest gestellt dass ich wohl nicht sonderlich gut in Interlace detection bin, bzw. in einigen Filmen wohl nur Teile interlaced waren?

    Ich bin über diesen Thread gestolpert:
    http://forum.doom9.org/showthread.php?t=104760

    Es sieht ja so aus als sollte die Funktionalität dieses Tools in MeGUI und ggf. StaxRip übernommen werden.

    Ist das wirklich geschehen?
    Wenn ja, wie trigger ich das?

    Danke :)

  • In MeGui wird dies getriggert in dem man den Input im Avsynthbereich analysieren lässt, grobe Handhabe von MeGui ist auch im etwas älteren 'MeGui Essentials' beschrieben.
    Letztendlich bleibt einem aber nichts anderes übrig als immer noch mal drauf zu gucken ober mit kleinen Problemen zu Leben. Es gibt halt keine Methode die pauschal immer die besten Ergebnisse liefert. :)

    Cu Selur

  • Gefunden, Danke :)

    Ich habe aber den Eindruck dass das alte Tool im oben genannten Thread besser funktioniert hat als der Test in MeGUI.

    Bei meinem Problem-Film hatte ich plötzlich weit vorne interlace gefunden, weiter hinten aber nicht mehr.

    MeGUI sagt mir einfach "Progressive". Das alte Tool, was ja mal in MeGUI rein sollte sagt richtig viel:

    Sieht richtig gut aus, finde ich...

    Das tool ist aus 2006, zumindest die Version die am Thread hing. Ist die Empfehlunf nach heutigem Stand der Dinge auch noch richtig?
    TDeint() verwenden, oder etwas anderes?

  • Wie ^ oben erwähnt, hatte ich die automatische Analyse der MeGUI an einem kleinen Schnipsel getestet, in dem es nur wenig Bewegung gab. Da wurde mir doch glatt IVTC für PAL-Video empfohlen?! - Definitiv falsch... Und das Testtool bringt das selbe Ergebnis.
    _

    Weil TDeint und ColorMatrix zusätzliche Hinweise vom MPEG2-Decoder nutzen können, wäre diese Kombination als relativ zuverlässig zu empfehlen.

  • Danke LigH! :)

    Mein AVS sieht jetzt so aus:
    MPEG2Source("VTS_04_1.d2v")
    TDeint()
    ColorMatrix(d2v="VTS_04_1.d2v")

    Laut Doku soll d2v= schneller sein als die Verwendung der Hints.

    Ist es OK dass ich dass nach dem TDeint() so mache?

    Sollte man ColorMatrix pauschal immer verwenden?

    Und zum Thema TDeint: Sollte ich irgend welche Parameter angeben, oder macht er ohne Parameter in Normal Fall alles richtig, nur halt ohne spezielles Tuning?

    Und wenn TDeint die Hinweise vom MPEG2-Decoder nutzt - sollte man ihn immer bevorzugen wenn es ums Deinterlacen gibt, oder macht es auch manchmal mehr Sinn Yadif oder TomsMoComp zu verwenden?

    Danke! :)

Jetzt mitmachen!

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