[patches} Korrekte interlaced und framesynchrone Ausgabe für SDTV/HDTV auf VGA/DVI/HDMI/RGB/SCART

  • Zitat

    Originally posted by biggsmann
    Die Störungen sind bei allen Auflösungen. Sie gehen über die ganze Breite und bis max. 3/4 vertikal. Mit den xv-Optionen habe ich noch nicht rumprobiert, da ich gar nicht weiß, wo man die konfigurieren kann :-(.


    - konfigurieren kann man die Adaptertypen erst in neueren xine-libs
    - bei aelteren xine-libs nimmt er einfach den ersten Adapter den er findet. Manuell einfach z.B. 'xvinfo' aufrufen. Noetigenfalls ungeeigete Adapter im Xserver auskommentieren. Falls vorhanden immer dem Overlay Adapter den Vorzug geben.
    - ich wuerde die Tests erst mit 576i beginnen und den Patch zunaechst deaktivieren. Dann sollte bis auf periodische Field-Vertauscher schon alles stimmen. Mann kann hieraus ganz gut die 50Hz Genauigkeit der Modeline ableiten.
    - wenn das funkt den Patch aktivieren und Xorg.0.log kontrollieren. Die Fields muessen jetzt korrekt synchronisiert werden.


    Leider gibt es viele Moeglichkeiten bei der gesamten Konfiguration einschliesslich der Hardwareauswahl Fehler zu machen. Das ist schon klar.


    Wie ich die Sache so sehe, kann hier eigentlich nur eine fertige Distribution, die die Patches bereits fix und fertig vorkonfiguriert enthaelt, komfortabel weiterhelfen.

  • Zitat

    Original von durchflieger
    Habe gerade mal den aktuellen radeonhd Treiber getestet. Unterstützung für XV ist jetzt vorhanden aber leider noch keine für interlaced Modes.
    Da müssen wir uns wohl noch etwas gedulden :(


    Gruss durchflieger


    .. oje, geduld geduld - stimmt! hoffentlich tut sich nochwas richtung dualhead beim radeon-ati ("direct rendering"). bin jetzt (bzgl. WAF) wieder auf nvidia zurück! bleib aber am thema dran, weil's einfach eine geniale sache ist - fettes DANKE nochmal an dich! :coolgr


    gruß, ciax

  • ciax


    Mir ist beim experimentieren gestern noch eine xorg-Option in der Dokumentation aufgefallen die dir vieleicht weiterhelfen kann. Laut Doku soll man in der Section "Device" eine Monitor-Section an einen Ausgang binden können in der Form:


    Option "Ausgang" "Monitor"


    Du müsstest also wieder eine Single-Head-Konfig verwenden (dein TFT fällt leider weg dafür gibts dann aber wieder DRI) und in der Device-Section zum radeon-Treiber so etwas wie:


    Option "DVI-0" "LCD_TV"


    einsetzen. Zur Sicherheit würde ich das TFT auch mal kpl. abklemmen so das nur ein Monitor erkannt wird.


    Gruss durchflieger


  • es gibt doch immer noch ein "zuckerl" zum weitermachen/-testen ;) - danke, das probiere ich noch aus (wenn ich zeit finde --> WAF+nachwuchs :))


    müßte diese Option sein, stimmt's:

    und hier das Xorg.0.log (singlehead-conf noch ohne die option):

    müßte die Zeile so aussehen:
    ----------------
    Option "MonitorLayout" "TMDS, CRT"
    bzw.
    Option "MonitorLayout" "TMDS, NONE"
    bzw. nur:
    Option "MonitorLayout" "TMDS"
    ----------------


    Zitat

    Zur Sicherheit würde ich das TFT auch mal kpl. abklemmen so das nur ein Monitor erkannt wird.


    hmm .. das hatte ich eigentlich bisher auch (das TFT hing weiterhin an der nvidia). nur der LCD_TV war dran am HDMI-ausgang der onboard-ati. komisch .. :schiel


    gruß, ciax

    Lascala LC17 - tribute to viking ;o) + atric IR / SoC ASUS J3455M-E / OctopusNet S4 / yavdr ubuntu jammy / output: osd2web + kivy-osd2web / branch 'python3' via 6.4" TFT & sat>ip DVB-S/S2 via FullHD / NVidia GT1030 passiv

    2 Mal editiert, zuletzt von ciax ()

  • Ich hab bei mir einfach das ganze Debian System nochmal neu gebaut und die Patches angewand. Jetzt hab ich das Problem dass er überhaupt keinen einzigen Interlaced-Mode mehr schaltet. Die progressiven gehen alle. Ausgang ist wie immer deine xorg.conf und die Modes schalte ich nacheinander mit folgenden commands durch:


    xrandr --output DVI-0 --mode 1440x576_50i
    xrandr --output DVI-0 --mode 1920x1080_50i
    xrandr --output DVI-0 --mode 720x576_50i


    Xorg.log: http://pastebin.com/m33ec2781

  • ciax


    Die Option "MonitorLayout" ist glaube ich Treiber spezifisch (nvidia?) und dürfte bei dem radeon Treiber nicht funktionieren.
    Die Option die ich meine ist in unter "man xorg.conf" beschrieben.


    Den Namen für "Ausgang" ist Treiber und Karten spezifisch und muss aus dem xorg.log entnommen werden:


    Code
    [..]
    (II) RADEON(0): Output VGA-0 using monitor section LCD_TV
    (II) RADEON(0): I2C bus "VGA-0" initialized.
    (II) RADEON(0): Output HDMI-0 has no monitor section
    (II) RADEON(0): I2C bus "HDMI-0" initialized.


    Hier gibts offenbar VGA-0 und HDMI-0. Die "LCD_TV" section hätte HDMI-0 zugeordnet werden müssen. Das sähe dann so aus:
    Option "HDMI-0" "LCD_TV"


    Ob der radeon Treiber das aber wirklich auswertet muss du ausprobieren.

  • Zitat

    Original von dortje
    Ich hab bei mir einfach das ganze Debian System nochmal neu gebaut und die Patches angewand. Jetzt hab ich das Problem dass er überhaupt keinen einzigen Interlaced-Mode mehr schaltet. Die progressiven gehen alle. Ausgang ist wie immer deine xorg.conf und die Modes schalte ich nacheinander mit folgenden commands durch:


    xrandr --output DVI-0 --mode 1440x576_50i
    xrandr --output DVI-0 --mode 1920x1080_50i
    xrandr --output DVI-0 --mode 720x576_50i


    Xorg.log: http://pastebin.com/m33ec2781


    Was meldet xrandr denn an verfügbaren Modes?

  • Zitat

    Original von durchflieger
    Die Option "MonitorLayout" ist glaube ich Treiber spezifisch (nvidia?) und dürfte bei dem radeon Treiber nicht funktionieren.


    sollte eigentlich radeon-spezifisch sein: x.org



    probiere ich aus - beide optionen natürlich ;)


    danke,
    ciax

  • Kanns dir grad nicht per copy/past geben, da ist aber so ziemlich alles dabei, plus eben die per Modeline eingegebenen Modes wie zbsp 1440x576_50i. Die "von sich aus" gelisteten Modes sind allerdings alle progressiv. Das mein LCDTV die interlaced modes untersützt steht aber ausser Frage da sie vom normalen Satreiceiver und der XBOX aus Problemlos funktionieren.


    Edit: Und zu der Ausgang->Monitor zuordnung die ihr da gerade besprecht, die funktioniert einwandfrei. Habe ich auch hier gemacht, da sonst die interlaced Modes nur für den ersten (den VGA) Ausgang angeboten wurden.


    Hier ist alles sehr gut erklärt: http://wiki.debian.org/XStrikeForce/HowToRandR12

  • Zitat

    Original von durchflieger
    Die Beschreibung passt aber nicht zum aktuellen radeon Treiber. Die im Source mitgelieferte man Page kennt die Option auch nicht.


    .. kann natürlich sein - auf der seite (http://wiki.x.org/wiki/radeon) wird auch hingewiesen (--> "old versions") - kam nur nicht so klar raus .. bis dann - gruß, ciax

  • Zitat

    Original von dortje
    Edit: Und zu der Ausgang->Monitor zuordnung die ihr da gerade besprecht, die funktioniert einwandfrei. Habe ich auch hier gemacht, da sonst die interlaced Modes nur für den ersten (den VGA) Ausgang angeboten wurden.


    Hier ist alles sehr gut erklärt: http://wiki.debian.org/XStrikeForce/HowToRandR12


    Sehr schöne Beschreibung die du da ausfindig gemacht hast!
    ciax
    Mit der Anleitung solltest du das hinbekommen.


    Gruss durchflieger

  • Zitat

    Original von dortje
    [..]Hier ist alles sehr gut erklärt: http://wiki.debian.org/XStrikeForce/HowToRandR12


    super - mille grazie!
    ciax


    durchflieger: kommt auf's gleiche raus, wie du schon angeraten hast :)

    Lascala LC17 - tribute to viking ;o) + atric IR / SoC ASUS J3455M-E / OctopusNet S4 / yavdr ubuntu jammy / output: osd2web + kivy-osd2web / branch 'python3' via 6.4" TFT & sat>ip DVB-S/S2 via FullHD / NVidia GT1030 passiv

    Einmal editiert, zuletzt von ciax ()

  • Hier mal eine überarbeitete xorg.conf nach den Infos aus dieser Anleitung http://wiki.debian.org/XStrikeForce/HowToRandR12
    Durch entsprechende Kombination der Option "Monitor-XXXX" sollten die Ausgänge jetzt individuell konfigurierbar sein. Bei Karten mit mehreren Ausgängen sollte man die nicht verwendeten ggf. expilzit abschalten mit Option "Monitor-XXXX" "NoMonitor".

  • Ich nochmal: Habe heute die in der xorg enthaltenen Modelines getestet und dabei folgendes festgestellt: Die 1440x576i-Auflösung erkennt zwar mein LCD (als 576i), allerdings kann es sie nicht vernünftig darstellen. Kann es sein, dass die horiz. Auflösung meines Displays (die nur bei 1368 px liegt) sich mit der 1440-er Auflösung beißt?
    Wenn ja, wie kann ich ein korrektes 576i-Timing am DVI-Ausgang erzwingen?


    Danke
    biggsmann

  • Zitat

    Original von biggsmann
    Ich nochmal: Habe heute die in der xorg enthaltenen Modelines getestet und dabei folgendes festgestellt: Die 1440x576i-Auflösung erkennt zwar mein LCD (als 576i), allerdings kann es sie nicht vernünftig darstellen. Kann es sein, dass die horiz. Auflösung meines Displays (die nur bei 1368 px liegt) sich mit der 1440-er Auflösung beißt?
    Wenn ja, wie kann ich ein korrektes 576i-Timing am DVI-Ausgang erzwingen?


    Danke
    biggsmann


    Die 1440 Auflösung ist bei digitalen Verbindungen (HDMI, DVI) notwendig da diese ein unteres Limit von ~25Mhz pixel clock haben. Dabei wird im Sender (Graphikkarte) jeder Bildpunkt horizontal verdoppelt und im TV-Empfänger wiederum nur jeder 2 Bildpunkt verwendet so das wieder das urspüngliche Format mit 720 entsteht. Dieses so gewonnene 720x576 Bild wird dann auf die native Panelauflösung vom TV skaliert. Es gibt laut HDMI Spezfikation im digitalen Protokoll spezielle Informationen (Flags) mit denen seitens des Sender signalisiert wird, das mit horizontaler Verdoppellung gesendet wird.
    Und hier liegt vermutlich der Hacken an der Sache. Der radeon Treiber wird dieses Flag nicht gesetzt haben bei der 1440 Auflösung. Damit hängt es dann vom TV ab was er daraus macht. Meine LG LCD-TV's sehen eine 1440 Auflösung offenbar als 720er an auch wenn das Flag nicht gesetzt ist (man da hat sogar mal einer der Entwickler bei LG mitgedacht :-). Dein TV scheint das wohl anders zu interpretieren. Dann bleibt nur noch der Versuch direkt die 720x576 Modeline zu verwenden. Auf den LG's bekomme ich damit auch ein Bild das allerdings nicht so klar ist wie bei 1440 was auch nicht verwunderlich ist da ja ausserhalb der Spezifikation.


    Gruss durchflieger

  • hallo,


    hab mir gestern noch die zeit genommen, zu testen. dank der neuen xorg.conf, schaut's nun viel besser aus :tup


    die option

    Code
    Option         "Monitor-VGA-0"         "NoMonitor"

    mußte ich auskommentieren - nimmt mein board nicht.


    trotzdem wird HDMI-0 nun auch die richtige LCD_TV section zugeteilt.

    Code
    (II) RADEON(0): Output HDMI-0 using monitor section LCD_TV

    mit "xrandr" können die verschiedenen auflösungen zugeordnet werden - mein display ist auch ein 1366x768er. folgende auflösungen mag es nicht:


    Code
    "720x576_50i"
    "720x576_50"
    "1440x576_50i"


    zum ersten mal sehe ich, daß das gerät von sich aus die modi anzeigt - zB: 720Px50 bzw 1080ix50 - also scheint der stream original zum LCD weitergereicht zu werden.


    ich nutze das xineliboutput-plugin mit durchflieger's patch. SDTV-material wird immer mit 720Px50 angezeigt (skaliert er hoch, denke ich mal) - dabei ist das OSD verkleinert und links versetzt. bei 720P HD-material sieht es perfekt aus!! (ORF-1HD, arte HD).


    bei 1080i HD-material (anixe-hd, astra-hd, ..) wird der modus am display auch angezeigt (1080ix50), allerdings scheint es mir hier so, daß genau der ausschnitt 1360x768 aus 1920x1080 angezeigt wird - das bild ist unten abgeschnitten - nur der obere teil und interlacing zeilen sind sichtbar (??) :schiel


    ad xineliboutput: deinterlacing ist abgeschaltet (sieht ganz gut aus - nicht ganz so gut wie mit "nvidia/tvtime/greed-2-frame"), wenn ich software skalierung deaktiviere, bleibt das bild stehen. also scheint mein display nicht zu skalieren (??) .. das gehört aber eher in den 2. thread ..


    die anfangs geschilderten "defizite" (ruckler, interlacing) sind so gut wie verschwunden. das erwähnte flimmern (pixel/-ketten rot/gelb/grün) ist nicht zu sehen, wenn eine Modeline 1360x768_50 genutzt wird - bei einer mit 60Hz ist es vorhanden ..


    im Xorg.0.log sehe ich, daß der patch arbeitet (bei SDTV material eher mäßig, bei HD-720P sind recht viele neue einträge bzgl. FRC zu sehen).


    soweit einmal ein erster (wieder eher subjektiver) erfahrungsbericht ;) -- details folgen dann noch .. wenn ich weiß, was eigentlich interessiert.


    liebe grüße,
    ciax


  • Setze anstatt Option "Ignore" "true" mal "Enable" "false" ein in der NoMonitor Section. Das klappt bei mir besser. Es ist schon wichtig das die anderen Ausgänge erstmal zuverlässig abgeschaltet werden.



    Mir scheint das du da noch mit den xineliboutput Einstellungen im argen bist. Probiere doch erstmal ob du bei den wichtigen Auflösungen einen normalen Desktop vernüftig hinbekommst.


    Gruss durchflieger

  • Zitat

    Original von durchflieger
    Mir scheint das du da noch mit den xineliboutput Einstellungen im argen bist. Probiere doch erstmal ob du bei den wichtigen Auflösungen einen normalen Desktop vernüftig hinbekommst.


    Gruss durchflieger


    getestet habe ich mittels:

    Code
    xinit -- ./X -noreset -br -ac -logverbose 6 -verbose 6 -config /usr/local/xorg/etc/X11/xorg.conf $*

    aus "/usr/local/xorg/bin" heraus. somit kommt X up mit einem xterm - in diesem dann mittels "xrandr" die einzelnen auflösungen getestet. bis auf die oben gelisteten funktionieren die auch. es ist natürlich schon fatal, daß "720x576_50i" & "720x576_50" nicht genommen werden ..


    wenn ich deine "setup.conf" einstellungen bzgl. "xineliboutput" nehme, dann kommt kein bild (nur ton) - wenn ich meine ursprünglichen einstellungen nehme und per osd-plugin-setup adaptiere (xineliboutput.Video.Deinterlace = none) habe ich bild - danach "software-scaling" auf nein stelle, bleibt das bild stehen ..


    ich teste weiter, ok!


    ciax

    Lascala LC17 - tribute to viking ;o) + atric IR / SoC ASUS J3455M-E / OctopusNet S4 / yavdr ubuntu jammy / output: osd2web + kivy-osd2web / branch 'python3' via 6.4" TFT & sat>ip DVB-S/S2 via FullHD / NVidia GT1030 passiv

    Einmal editiert, zuletzt von ciax ()

Jetzt mitmachen!

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