Für den letzten Feinschliff

  • LigH, ich meine diesmal nicht die Darstellungsprobleme von interlaced YV12 sondern einfach die
    Wandlung von interlaced YV12 nach progressive YV12 undgenau das ist verlustbehaftet.

    Dazu ne skizze (an die Farbraumexperten, bitte nicht hauen, ich weiss dass die ganze geschichte komplexer ist,aber das wuerde den rahmen sprengen)

    Notation:
    - und kleinbuchstaben kennzeichnen fehlende samples, die durch interpolation erst beim Playback oder bei der Konvertierung erzeugt werden.
    Groszbuchstaben kennzeichen die vorhandenen Farbsamples.

    dh. X ist im TopField ein Farbwert, der eine Zeile (klein x) tiefer aus den benachtbarten werten (grosz X) interpoliert wird.
    genauso geschieht dies mit den Farben im BottomField.

    wenn man nun interlaced YV12 zu progressive YV12 konvertier, passiert folgendes:

    (grosz) X und Y werden gemischt und auf dem wert grosz Z geschrieben.
    die aus (grosz) X und Y interpolierten (klein) x und y werden wiederum gemischt und dann auf das darunterliegende grosz Z geschrieben.

    Dadurch verliert man im grunde genommen nochmals die haelfte der Farbaufloesung, die bei interlaced YV12 eh schon im keller ist.

  • OK egal. Noch einmal zurück zur ursprünglichen Fragestellung !!

    Ich bin jetzt mal hingegangen und hab einfach beim meinem Interlaced encodeten Progressive Film mit ReStream den Flag auf Progressive umgestellt und siehe da. Es ändert null und nix an der Qualität. Denn die ScanOrder
    war auf der DVD ja bereits ZigZag. Das heißt ja, dass das Urmaterial (Progressive) richtigerweise mit der ZigZag Scan-Order abgetastet wurde
    und dann nach dem encodieren als 2 Fields in !!einem Frame!! gespeichert wurde. Von daher ist es in diesem Falle sogar richtig das Interlaced Flag mit ReStream nach Progressive zu ändern damit der Decoder die richtige Scan-Order verwendet : und zwar ZigZag denn so wurde es encodet und liegt so auf der DVD !!! Wäre die Scan-Order auf meiner Original DVD Alternate gewesen, dann hätte ich den Flag natürlich nicht ändern dürfen.

    So auch KiKA vom DVD-SVCD-Forum :

    Wenn man progressives Video interlaced encodet, erstellt man KEIN interlaced Video. Man verhindert damit aber, dass einige der Mechanismen richtig funktionieren. Der DCT-Scan z.B., der bei Alternate - das ist die Variante für interlaced Video - und progressivem Video schlicht und ergreifend verkehrt scannt. Alternate geht ja von zwei ineinander verschränkten Halbbildern aus, die inhaltlich nichts oder nur wenig miteinander zu tun haben, eben von echtem interlaced Video.

    Ich hoffe ich liege damit jetzt nicht ganz daneben.

    scharfis_brain :

    Bei deiner Veranschaulichung beziehst du dich doch auf echter Interlaced ... also 50 Halbbilder (Fields) pro Sekunde ??

    IceMan

  • Muß er nicht mal: Bei scharfi's Problembeschreibung geht es wirklich nur um das Zurückführen von der abwechselnd zeilenweisen Behandlung zum Gesamtframe. Selbst wenn man progressives Video als Interlaced-YV12 eingelesen hat und dann wieder zu Progressiv zurückführt, selbst dann würde es zu Mischfarben kommen, die ungenau sind. Es geht da nur um die Art der Speicherung, nicht um den Videoinhalt:

    Bei Interlaced-YV12 teilen sich Zeile 1 + 3 sowie 2 + 4 eine Farbigkeit.
    Bei Progressiv-YV12 teilen sich Zeile 1 + 2 sowie 3 + 4 eine Farbigkeit.

    Die einzige sichere Lösung: Umwandlung in ein gepacktes Format (z.B. nach YUY2) vor der Ausgabe.

  • Ok ich glaube ich laber dauernd und hab eigentlich gar keine wirkliche Ahnung davon. Darum hab ich mir mal direkt ein paar Fragen aufgeschrieben.

    1) @ LiGH : Wie würde ein solches AViSYNTH Script ausssehen (also um interlaced encodetes progressive Material sauber nach Progressive zu encoden) ?
    2) Welchen Farbraum verwendet eine PAL-DVD ?
    3) Wo kann ich das mit den Farbräumen nachlesen (am Besten bebildert und leicht verständlich) ?
    4) Übernimmt CCE alle Einstellungen aus dem AVS-Script ?
    5) Was passiert bei echtem Interlaced Material (Picture Structure : Field) mit den Zeilen (also zB bei TFF die Zeilen 2,4,6...) in denen keine Daten für das Bild stehen sind die dann einfach schwarz ?
    6) Vorausgesetzt Frage 4) war nicht völliger Müll : Wenn ich jetzt mal davon ausgehe dass ich auf einer DVD echtes Interlaced Material ... einmal mit Picture Structure Frame und einmal mit Picture Structure Field. Woher weis der SAP dann dass er bei Structure Frame nacheinander die geraden und dann die ungeraden (oder anders rum)
    Zeilen des Bildes ausgeben muss und bei Picture Structure Field immer nach einem Halbbild (Zeile 1..3..5..) zum nächsten Picture springt ?
    7) Wieso gibt es den DCT-Type (also Field / Frame) ? Und wozu ist es gut ? Reicht es dem Dekoder nicht einfach die Scan-Order zu kennen ?

    IceMan

  • Zu 1) - Man füge am Ende die Zeile "ConvertToYUY2(interlaced=true)" an.

    Zu 2) - YUV mit 4:2:0-Chroma-Subsampling (entspricht etwa dem, was auch YV12 verwendet).

    Zu 3) - Mit der Forumsuche nach "YV12 YUY2 gepackt planar" suchen, da haben wir uns schon wochenlang aufgehalten (z.B. mit gemoe).

    Zu 4) - Der CCE liest das Bild, was AviSynth erzeugt.

    Zu 5) - Ich verstehe die Frage nicht. Stell dir besser vor, die Fields wären als Bilder mit halber Höhe (gestaucht - 720x288) gespeichert worden, und werden dann bei der Darstellung in Zeilen auseinandergerissen und gemischt.

    Zu 6) - Es werden immer komplette Frames dargestellt. Wenn sie bei Interlaced-Material fieldweise gespeichert waren, werden beide zu einem Frame gehörenden Fields vor der Darstellung wieder zu einem Frame gemischt. Dadurch ist auch die Darstellung auf progressiven Bildwerfern gesichert. Es gibt ja nicht nur Fernseher, denen man die Fields separat zuschicken kann, weil Fernseher ja das Bild interlaced darstellen.

  • Hi,

    also Danke erstmal.

    Zitat von LigH

    Zu 1) - Man füge am Ende die Zeile "ConvertToYUY2(interlaced=true)" an.

    Was bedeutet dieser Befehl denn genau ? Also nur eine Farbumwandlung und diese muss wissen dass das Ausgangsmaterial Pseudo-Interlaced war ? Was hat es mit dem iPP auf sich ?

    Zitat von LigH

    Zu 2) - YUV mit 4:2:0-Chroma-Subsampling (entspricht etwa dem, was auch YV12 verwendet).

    Trifft das auf alle PAL DVDs zu ?? Auch auf Interlaced PAL DVDs ?

    Zitat von LigH

    Zu 4) - Der CCE liest das Bild, was AviSynth erzeugt.

    Ok. Dh alles was ich im AVISynth Script stehen habe wird gemacht bevor der Encoder nur einmal das Bild zu Gesicht bekommt das ist nice. Was mich allerdings noch ein wenig verwirrt ist sind die Einstellungen bezüglich CCE die ich zB in BatchCCEWS machen kann ... weil da steht SOURCE und dann habe ich meine Optionen. Ich dachte bisher immer ich stelle damit ein wie das Zielformat werden soll. Ich sage damit dem CCE also nur wie die Quelle aussieht ? Und die Veränderungen die AVISYNTH macht bevor es zum CCE gelangt muss ich die in den Optionen berücksichtigen falls meine obige Aussage stimmt ?

    Zitat von LigH

    Zu 5) - Ich verstehe die Frage nicht. Stell dir besser vor, die Fields wären als Bilder mit halber Höhe (gestaucht - 720x288) gespeichert worden, und werden dann bei der Darstellung in Zeilen auseinandergerissen und gemischt.

    Ok. Wunderbar hab ich verstanden. Ich dachte halt nur das da vielleicht die Original Struktur beibehalten wird und "leere" Zeilen hinzugefügt werden.

    Zitat von LigH

    Zu 6) - Es werden immer komplette Frames dargestellt. Wenn sie bei Interlaced-Material fieldweise gespeichert waren, werden beide zu einem Frame gehörenden Fields vor der Darstellung wieder zu einem Frame gemischt. Dadurch ist auch die Darstellung auf progressiven Bildwerfern gesichert. Es gibt ja nicht nur Fernseher, denen man die Fields separat zuschicken kann, weil Fernseher ja das Bild interlaced darstellen.

    Also Fieldweise ist Phase-Shifting oder ? Wenn sowas aber dann auf nen progressiven Bildwerfer kommt dann sieht es doch schrecklich aus ... wegen der Zeitdifferenz zwischen den einzelnen Fields.


    IceMan

  • 1) Keine Farbumwandlung. Nur eine Chroma-Subsampling-Umwandlung von 4:2:0 nach 4:2:2. Und praktisch alle DVDs sind interlaced encodiert worden, selbst wenn sie Progressiv-Video beinhalten.

    Zu "iPP": Lies die Dokumentation zu MPEG2Dec3 Version 1.10 von Nic. -- "iPP" = "interlaced Post Processing": Block- und Ringartefakte im DVD-Video werden für Interlaced-Video passend kaschiert.

    2) Jedes DVD-MPEG hat 4:2:0-Subsampling - egal ob PAL oder NTSC, egal ob progressiv oder interlaced. Lies mal "DVD Demystified"!

    6) Echtes Interlaced-Material sollte man sich nicht mit einem Progressiv-Projektor anschauen. Das sieht genau so streifig aus wie am PC-Bildschirm, wenn der DVD-Player nicht Deinterlacing anwendet.

  • LigH:Muß er nicht mal: Bei scharfi's Problembeschreibung geht es wirklich nur um das Zurückführen von der abwechselnd zeilenweisen Behandlung zum Gesamtframe. Selbst wenn man progressives Video als Interlaced-YV12 eingelesen hat und dann wieder zu Progressiv zurückführt, selbst dann würde es zu Mischfarben kommen, die ungenau sind. Es geht da nur um die Art der Speicherung, nicht um den Videoinhalt:

    Bei Interlaced-YV12 teilen sich Zeile 1 + 3 sowie 2 + 4 eine Farbigkeit.
    Bei Progressiv-YV12 teilen sich Zeile 1 + 2 sowie 3 + 4 eine Farbigkeit.

    Die einzige sichere Lösung: Umwandlung in ein gepacktes Format (z.B. nach YUY2) vor der Ausgabe.


    Ich hab dasjetzt nicht kommplett verstanden (denn Fetten teil)
    ich meine noch immer die konvertierung eines interlaced-encodedten preogressiven Videos zu einem progressive encodedtem progressiven Video.

    also diese Abfolge
    converttoyuy2(interlaced=true).converttoyv12(interlaced=false)

    und genau da gehts mit demChroma den bach runter :(

  • 1) Was ist denn nun richtig für die Konvertierung eines interlaced-encodeten progressive Videos zu einem progressive encodeten progressive Video :

    a) converttoyuy2(interlaced=true).converttoyv12(interlaced=false)

    b) ConvertToYUY2(interlaced=true)

    2) Empfiehlt sich iPP=true auch für interlaced encodetes Progressive oder nur für echtes Progressive Material ?

    3) Was ist eine Chroma-Subsampling-Umwandlung ? Wieso wird das gemacht ?

    4) Gibt es Phase-Shifting Material auf überhaupt auf DVD ?? Da hätte man ja doppelt so viele Frames mit Halbbildern ? Oder presst man generell nur immer Interlaced mit Zeilensprungverfahren (2 Fields pro Frame) auf DVD ?


    IceMan (der grad fleißig am lesen ist)

  • Zitat von -=IceMan=-

    1) Was ist denn nun richtig für die Konvertierung eines interlaced-encodeten progressive Videos zu einem progressive encodeten progressive Video :

    a) converttoyuy2(interlaced=true).converttoyv12(interlaced=false)

    b) ConvertToYUY2(interlaced=true)


    b) sollte ausreichen, den rest macht eh der encoder selber.
    a) war nur von mir zur veranschaulichung gedacht.

    Zitat

    2) Empfiehlt sich iPP=true auch für interlaced encodetes Progressive oder nur für echtes Progressive Material ?


    hrm. eigentlich ne gute frage. muesste man mal probieren...

    Zitat

    3) Was ist eine Chroma-Subsampling-Umwandlung ? Wieso wird das gemacht ?

    das was wir hier grade besprechen
    interlaced yv12 -> progressive yv12

    Zitat

    4) Gibt es Phase-Shifting Material auf überhaupt auf DVD ?? Da hätte man ja doppelt so viele Frames mit Halbbildern ? Oder presst man generell nur immer Interlaced mit Zeilensprungverfahren (2 Fields pro Frame) auf DVD ?


    guckstu hier: http://home.arcor.de/scharfis_brain/ExotischesInterlacing/
    der phase shift verschiebt den Film nur um 1/50 sec (ein Halbbild) nach hinten, sodass es am PC interlaced erscheint.


    Zitat

    IceMan (der grad fleißig am lesen ist)


    loeblich loeblich!

  • iPP=true empfiehlt sich nur dann, wenn das DVD-Video interlaced encodiert war. Wäre das DVD-Video progressiv codiert worden (seeehr unwahrscheinlich!), würde man "iPP=false" verwenden. -- Ist das etwa nicht logisch?! :nein:

    So langsam geht mit die Diskussion über meinen Horizont; es gibt Tage, da verstehe ich einfach nicht mehr, was manche Leute nicht verstehen...
    __

    @ scharfi:

    Im fetten Bereich meinte ich, dass man MPEG2-Video mit progressivem Bildinhalt per MPEG2Dec3-Plugin als Interlaced-YV12 einliest, und danach zu Progressiv-YV12 umwandelt. - Na, wie auch immer, ich kapier bald selber nicht mehr, worum's hier geht.

Jetzt mitmachen!

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