Hallo Besucher, der Thread wurde 2k mal aufgerufen und enthält 13 Antworten

letzter Beitrag von Unseen am

Nur mit dem C64 prüfen, ob mein TV 288p als 576p interpretiert.

  • Hallo,


    nachdem ich immer wieder lese, dass manche TVs 288p als 576p interpretieren und das zu Darstellungsfehlern führen kann, möchte ich mal in die Runde fragen, ob jemand ein Spiel oder ein Demo kennt, anhand dem ich erkennen kann, ob mein LCD-TV 288p falsch interpretiert.


    Auf Youtube finde ich immer nur Videos zu Konsolen. Die einzige Konsole die ich habe ist aber eine PS2 (mit 576i).


    Wenn mir also jemand sagen könnte, was ich laden und worauf ich dann achten muss, wäre das toll.


    Rein Subjektiv ist mein TV-Upscaler astrein aber die erinnerungen an CRT-Zeiten liegen zu lange zurück als dass ich falsch dargestellte Sprites als solche erkennen könnte.


    BTW: Weiß jemand, ob die HD-Ready norm evtl. vorschreibt, dass 288p richtig skaliert werden muss (so wie sie z.B. einen Component-Anschluss vorschreibt)? Mein TV ist nämlich "nur" HD-Ready.


    Danke und Gruß

    c64user

  • Dafür reicht schon der Einschaltbildschirm des C64. Das Videosignalformat ist beim C64 fest in der Hardware verdrahtet und lässt sich per Software nicht verändern.

    Wenn das Bild angezeigt wird, dann versteht der Bildschirm schon mal 288p.

    Viele LCD Geräte haben aber ein Problem beim horizontalen oder vertikalen scrollen. Das liegt daran, dass kein moderner Bildschirm mehr auf 50Hz läuft, sondern z.b. auf 100Hz oder noch schlimmer auf 60Hz etc. Um das zu testen genügt im Prinzip jedes Demo mit horizontal-Scroller. Am besten mit mehreren Scrollern gleichzeitig in verschiedenen Geschwindigkeiten.

  • Für den wichtigsten Test könnte man selbst ein kleines Programm schreiben, dass z.B. einen Sprite pro Frame abwechselnd ein- und wieder ausschaltet.

    Wird das Signal korrekt vom TV als 288p erkannt, flackert das Sprite mit 25 Hz.

    Wird hingegen das Signal als 576i interpretiert, sieht man ein feststehendes Streifenmuster.


    Für C64 habe ich das hier gefunden (nicht selbst getestet): https://csdb.dk/release/?id=157133&show=review#review
    //edit: Das hier könne auch hilfreich sein: https://csdb.dk/release/?id=172720&show=summary#summary


    Warum man das testen sollte: Durch flackernde Sprites wird in Spiel gerne kurzzeitige Unverwundbarkeit des Spielers dargestellt, z.B. in vielen Shootern. Durch das schnelle Flackern erscheint das Sprite in dann halb durchsichtig, was der gewünschte Effekt in 288p ist. Bei 576i hingegen nur unschöne Streifen.


    Zur Skalierung: "HD-Ready"-TVs haben eine vertikale Auflösung von 720 Zeilen. Teilt man das durch 288, ergibt das 2,5; es muss also immer Interpoliert werden.

    Wichtig: Viele Flach-TVs haben weiterhin standardmäßig einen Overscan-Bereich aktiviert - blasen also das Bild ein wenig über den sichtbaren Bereich hinaus auf. Was wiederum zu unschöner Interpolation führt. Diese Funktion lässt sich aber oft manuell abschalten.


    Wenn Deine PS2 Homebrew booten kann, ist das hier immer noch die beste Empfehlung: http://junkerhq.net/xrgb/index.php?title=240p_test_suite


    CU

    Kratznagel

  • Noch eine einfache, aber nicht unbedingt definitive Testmethode: Die Text-Scrollzeile im Introbildschirm von Great Giana Sisters muss klar lesbar und stabil auf einer Höhe sein. Manche Deinterlacing-Algorithmen erzeugen da ein vertikales 1-Pixel-Zittern, andere verschmieren die Zeile so stark, dass sie schlecht bis gar nicht lesbar ist.

  • Wird das Signal korrekt vom TV als 288p erkannt, flackert das Sprite mit 25 Hz.

    Warum man das testen sollte: Durch flackernde Sprites wird in Spiel gerne kurzzeitige Unverwundbarkeit des Spielers dargestellt, z.B. in vielen Shootern. Durch das schnelle Flackern erscheint das Sprite in dann halb durchsichtig, was der gewünschte Effekt in 288p ist. Bei 576i hingegen nur unschöne Streifen.

    Bedeutet dies also, dass wenn ein Sprite bei einem Treffer flackert und kein Streifenmuster zeigt, alles so ist, wie es sein soll?

    Wichtig: Viele Flach-TVs haben weiterhin standardmäßig einen Overscan-Bereich aktiviert - blasen also das Bild ein wenig über den sichtbaren Bereich hinaus auf. Was wiederum zu unschöner Interpolation führt. Diese Funktion lässt sich aber oft manuell abschalten.

    Wenn du damit die ZOOM-Funktion meinst: Die habe ich bewusst aktiviert (nur für den S-Video Eingang) damit Teile des Borders hinter dem Gehäuse "verschwinden". Bei CRTs war ja auch ein Teil des Borders im Overscan-Bereich. So eingestellt, dass ich Bordersprites von Wizball noch sehen kann.

  • Wie hast du das bitte GEFUNDEN? Wenn ich nach so einem Tool suchen würde in der CSDb, wie käme ich auf DAS als Resultat?

    Ich bin über Googlesuche auf einen Link im Lemon64-Forum gestoßen.


    Bedeutet dies also, dass wenn ein Sprite bei einem Treffer flackert und kein Streifenmuster zeigt, alles so ist, wie es sein soll?

    Das wäre aus meiner Sicht zumindest eins der wichtigsten Anzeichen.

    Ein flüssiges ruckelfreies Scrolling wie z.B. im GianaSisters-Intro ist wie oben schon erwähnt wurde ein weiterer Punkt.


    Wenn du damit die ZOOM-Funktion meinst: Die habe ich bewusst aktiviert

    Wenn Du mit der Darstellung zufrieden bist, musst Du nichts ändern. Eine optimale Skalierung bekommt man eigentlich nur dann, wenn alle Bildzeilen vom C64 auf dem LCD (der ja viel mehr Bildzeilen hat als ein CRT) gleichmäßig multipliziert werden. Wird bei 720p aber schwierig. Aber eine gute Skalierung/Zoomfaktor kann das Problem minimieren.


    Ein Test wäre, sich auf dem C64 eine Testgrafik in HiRes-Mode zu erstellen, in der die Zeilen abwechselnd schwarz und weiß sind und diese auf dem LCD zu betrachten. Sehen alle Zeilen absolut gleichmäßig aus, ist die Skalierung in Ordnung.


    CU

    Kratznagel

  • Dazu habe ich spontan noch eine Frage:

    Es gibt ja upscaler und linedoubler.


    Bringt das dann überhaupt was? 576p muss ja auch skaliert werden.


    Also alles, was nicht 720x1366 ausgibt, muss ja skaliert werden.


    Im Endeffekt macht so ein Kasten ja das selbe wie der TV. Das gibt doch dann gar keinen Sinn! Oder wo ist mein Denkfehler?

  • Das Problem ist, wenn der Fernseher neben dem Skalieren auch deinterlacen muss, das Gerät durch das Deinterlacing nicht nur nur die Bilddarstellung in Bewegung völlig ruiniert, sondern meist eine hohe Latenz erzeugt. Erhält der Fernseher ein Signal, welches er als progressiv versteht, 576p, findet kein Deinterlacing statt und es wird nur skaliert ohne notwendigerweise hohe Latenz hinzuzufügen und häufig völlig sieht die Skalierung völlig akzeptabel aus.
    Die Linedoubler sorgen im Grunde hauptsächlich dafür, dass kein falsches deinterlacing stattfinden muss.

    Das ganze Problem entstünde nicht, verstünden moderne Fernseher 288p korrekt.

  • Erhält der Fernseher ein Signal, welches er als progressiv versteht, 576p, findet kein Deinterlacing statt und es wird nur skaliert ohne notwendigerweise hohe Latenz hinzuzufügen

    Das ist ja genau der Punkt, an dem ich einen Knoten im Hirn habe. Wenn ich (egal ob C64 oder PS2 und dergl. mehr) ein interlaced Signal einspeisen will, muss es ja zu einem progressiv Signal gewandelt werden. Ohne Zusatzschaltung kümmert sich darum der TV. Um dem TV ein progressive Signal zuzuführen braucht es ergo eine Zusatzschaltung, die das wandelt.


    Verlagerts sich dadurch nicht einfach das (theoretische) deinterlacing und Lag-Problem vor den TV? Irgendwo in der Kette Gerät<->TV muss ja gewandelt werden.

  • 1. ein 64er kann kein interlace ausgeben. Wenn das Bild der 64er deinterlaced wird, dann ist das ein Fehler.
    2. legitime interlace Signale wie das einer PS2 werden durch den Fernseher mit einer enormen Latenz deinterlaced. Das sieht vielleicht besser/flimmerfrei aus als etwa einem retrotink oder ossc, macht aber keinen Spaß, wenn man Geschicklichkeitsspielspiele spielen will.

    Die Latenz von retrotink und ossc beträgt etwa drei Zeilen! Fernseher verzögern mehrere volle Bilder.

  • Und warum?

    Gutes Deinterlacing berücksicht die Bewegungsvektoren von Bildteilen und die kann man am besten ermitteln, wenn man ein paar (Halb)bilder in die Zukunft schaut.