TV-Bild auf 2 Bildschirmen gleichzeitig: Nur ein TFT wird erkannt.

  • Hi,


    ich nutze yavdr 0.3 mit einer Nvidia 8600 GTS. Angeschlossen sind 2 TFTs über Adapter DVI->VGA.
    TFT1 soll mit 1280x1024 als primärer Bildschirm arbeiten (Ausgabe beim Booten und dann das TV-Bild).
    TFT2 soll mit 1920x1200 ebenfalls das TV-Bild anzeigen.
    Das OSD soll auf beiden Bildschirmen angezeigt werden.


    Ist das machbar?
    Hintergrund ist, dass ich auf TFT2 normalerweise den normalen PC habe und dann auch "nebenbei" auf TFT1 mit dem VDR arbeiten oder TV schauen kann. Für Kinofilme möchte ich natürlich den großen TFT2 nutzen. Bisher war da ein VGA-Umschalter dazwischen, aber aufgrund der unterschiedlichen Auflösung ist das natürlich keine richtige Lösung.


    Ist-Zustand:
    Beim Booten zeigt TFT1 die Ausgaben auf der Konsole an und schaltet dann in den Standby. Dafür geht TFT2 an und zeigt das TV-Bild an.
    Die Auflösung war ursprünglich 640x480. Im Webinterface konnte ich keine höhere Auflösung einstellen und es wird auch nur ein Bildschirm angezeigt. Ich habe in der xorg.conf.yavdr eine Modeline eingetragen und in der Screen-Section die Frequenzeinträge auskommentiert, um über 640x480 zu kommen.


    Wie bekomme ich es jetzt hin, dass ich im Webinterface beide Bildschirme auswählen kann?


    Danke und Gruß,
    blueink

    yavdr| intel softhddevice | Hasswell i5 4460) | Mainboard GA-H81M-HD3 Intel H81 | 8 GB Ram |
    DVB-S2 Twintuner Digital Devices Cine S2 Rev 5.5 | TFT 27" (DVI) | Sound SPDIF -> Denon AVR-X4000
    Homebrew lirc (serial) | LCD 320x240 SED1330 (parport) | 128 GB System SSD, 2x2TB HDD ZFS

  • Dann antworte ich mir mal selbst :)


    So, also mit unterschiedlichen Auflösungen scheint das nicht zu gehen, bei gleicher Auflösung wäre der Clone-Modus eine funktionierende Möglichkeit.


    Ich habe die /etc/X11/xorg.conf.yavdr gelöscht und mit nvidia-settings 2 neue xorg.conf-Dateien erstellt. Eine für den großen Bildschirm und eine für den kleinen Bildschirm.
    Die Auflösungen und Bildwiederholraten habe ich von Hand in die Dateien eingetragen, sonst komme ich nach wie vor nicht über 640x480.


    Ein Skript ersetzt jetzt die xorg.conf.yavdr durch die jeweilige Version und startet mit service restart openbox X neu.
    Klappt sehr gut, allerdings sollte man eine eventuell gerade laufende Wiedergabe einer Aufnahme pausieren, da diese sonst nach vorne springt. Mal schauen, ob man das automatisieren kann.


    Nun weiß ich noch nicht, wie ich das Script per Fernbedienung aufrufen kann. Einträge in der commands.conf unter /etc/vdr oder /var/lib/vdr tauchen nicht im Befehlsmenü des VDRs auf.
    Eine andere Möglichkeit wäre noch irexec.


    Nebenbei wäre das doch auch eine gute Idee für ein Plugin...


    Gruß,
    blueink

    yavdr| intel softhddevice | Hasswell i5 4460) | Mainboard GA-H81M-HD3 Intel H81 | 8 GB Ram |
    DVB-S2 Twintuner Digital Devices Cine S2 Rev 5.5 | TFT 27" (DVI) | Sound SPDIF -> Denon AVR-X4000
    Homebrew lirc (serial) | LCD 320x240 SED1330 (parport) | 128 GB System SSD, 2x2TB HDD ZFS

  • Da hab ich auch schon dran geknobelt, mit gleichem Ergebnis. Unterschiedliche Auflösungen auf zwei Ausgabegeräten lassen sich mit einer NVIDIA Graka nicht realisieren. Bleibt einem nur, den Clone-Modus zu nutzen, der dann allerdings die niedrigere Auflösung (in deinem Fall 1280x1024) als Maximalauflösung nimmt.


    Als Ausweg bliebe einen Streamingclient, oder 2 Grafikkarten zu verwenden, sofern das Motherboard genug Steckplätze hat. Mit XEN lassen sich da feine Sachen bauen.


    Gruß
    iNOB

  • Da hab ich auch schon dran geknobelt, mit gleichem Ergebnis. Unterschiedliche Auflösungen auf zwei Ausgabegeräten lassen sich mit einer NVIDIA Graka nicht realisieren. Bleibt einem nur, den Clone-Modus zu nutzen, der dann allerdings die niedrigere Auflösung (in deinem Fall 1280x1024) als Maximalauflösung nimmt.


    Das verstehe ich nicht. Ich habe aber 2 verschiedene Auflösungen. 800x600 auf dem TFT im Gehäuse und 1920x1080 auf dem Plasma. Hängen beide an meiner Nvidia G210.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Komisch... ich hab mir da einen abgebrochen. Aber ich lass mich gerne eines Besseren belehren. Wäre nett wenn du deine xorg.conf hier einstellen würdest, damit man an deinem Wissen teilhaben kann.


    Gruß
    iNOB

  • Komisch... ich hab mir da einen abgebrochen. Aber ich lass mich gerne eines Besseren belehren. Wäre nett wenn du deine xorg.conf hier einstellen würdest, damit man an deinem Wissen teilhaben kann.


    Ich habe einfach nur im yaVDR-Webfrontend auf 2-Bildschirm-Betrieb und GraphTFT geklickt.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Wir reden scheints aneinander vorbei. Der Threadersteller und meine Wenigkeit versuchen die Ausgabe des Fernsehbildes auf zwei getrennte Monitore/TV's mit unterschiedlicher Auflösung umzulenken. Soweit ich informiert bin, gehts beim GraphTFT-Plugin eher um die Ausgabe des OSDs und nicht um das laufende Fernsehbild.


    Gruß
    iNOB

  • Wir reden scheints aneinander vorbei. Der Threadersteller und meine Wenigkeit versuchen die Ausgabe des Fernsehbildes auf zwei getrennte Monitore/TV's mit unterschiedlicher Auflösung umzulenken. Soweit ich informiert bin, gehts beim GraphTFT-Plugin eher um die Ausgabe des OSDs und nicht um das laufende Fernsehbild.


    Glaube ich nicht, das wir aneinander vorbeireden. Bei yaVDR ist das Graphtft-Plugin so eingerichtet, dass es auf einem 2. X-Server über das Frontend graphtft-fe ausgibt. Ihr müsst das graphtft-fe-Frontend ja nicht laufen lassen, dann habt ihr einen 2. X-Server mit zum Display passender Auslösung laufen. Natürlich wird dadurch noch kein 2. TV-Bild ausgegeben. Da könnt ihr euch ja mein yavdr-addon-pip ansehen. Da gebe ich ja 2 unterschiedliche TV-Bilder mit unterschiedlichen Auflösungen aus, nur eben auf dem selben Display. Nun das 2. Signal auf das 2. Display umlenken und fertig.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Ahso.... logisch mit einem zweiten X-Server geht das natürlich. Da gibts dann eben zwei unterschiedliche xorg.conf, die über DISPLAY 0 und 1 auf die jeweiligen Ausgabedevices zeigen. Danke für den Tip! Ich brauchs zwar nicht mehr für meinen Anwendungsfall, aber man kann sich das mal im Hinterkopf behalten ;)


    [Edit] Wobei ich grad lese, dass das Pipe-Fenster ohne VDPAU daherkommt?! Macht dann wohl doch keinen Sinn, wenn ich auf beiden Displays VDPAU-Unterstützung brauche, oder?[/Edit]


    Gruß
    iNOB

  • [Edit] Wobei ich grad lese, dass das Pipe-Fenster ohne VDPAU daherkommt?! Macht dann wohl doch keinen Sinn, wenn ich auf beiden Displays VDPAU-Unterstützung brauche, oder?[/Edit]


    Ich vermute, dass es auf dem 2. X-Server kein Problem sein sollte VDPAU zu benutzen, außerdem kann es sein, dass nur xineliboutput das Problem hatte. aber auf einem X-Server wird es eventuell tearing geben. Muss man dann wahrscheinlich umschalten welche Applikation den Sync2vblank macht. Eine Variante wäre es auch auf einem Schirm statt der 2. VDR-Instanz mit xineliboutput XBMC laufen zu lassen.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Hm, das ist alles recht aufwendig. Ich denke, ich bleibe bei der Umschaltung der Bildschirme über die Xorg.conf.
    Wie muss denn die commands.conf aussehen, bzw. wo muss diese platziert werden? Meine Einträge werden irgendwie ignoriert.

    yavdr| intel softhddevice | Hasswell i5 4460) | Mainboard GA-H81M-HD3 Intel H81 | 8 GB Ram |
    DVB-S2 Twintuner Digital Devices Cine S2 Rev 5.5 | TFT 27" (DVI) | Sound SPDIF -> Denon AVR-X4000
    Homebrew lirc (serial) | LCD 320x240 SED1330 (parport) | 128 GB System SSD, 2x2TB HDD ZFS

  • Meine Lösung sieht nun so aus:


    - Jeweils eine xorg.conf.yavdr pro Bildschirm erstellt.


    - 2 Skripte erstellt, die jeweils eine der beiden Dateien nach /etc/X11/xorg.conf.yavdr kopieren und die bestehende Datei ersetzen, openbox neu starten und über svdrpsend eine Meldung mit dem Namen des nun aktiven TFTs ausgeben.
    Die Meldung sieht man so auch auf dem über graphlcd gesteuerten Display.


    - Upstart-Eintrag für irexec erstellt (das Konzept ist ja genial simpel in der Einrichtung....!)


    - /etc/lirc/lircrc angelegt und dort konfiguriert, dass bei einer bestimmten Taste auf der Fernbedienung das erste Skript ausgeführt wird, bei einem weiteren Druck das zweite, beim nächsten wieder das erste usw.
    Im schlimmsten Fall muss man 2x drücken wenn der VDR nach dem Hochfahren bereits auf Bildschirm 2 ist. Das könnte man beheben, indem man beim Start oder Shutdown die xorg.conf für den ersten Bildschirm einsetzen lässt, so dass der VDR generell immer mit Bildschirm 1 startet.


    Gruß,
    blueink

    yavdr| intel softhddevice | Hasswell i5 4460) | Mainboard GA-H81M-HD3 Intel H81 | 8 GB Ram |
    DVB-S2 Twintuner Digital Devices Cine S2 Rev 5.5 | TFT 27" (DVI) | Sound SPDIF -> Denon AVR-X4000
    Homebrew lirc (serial) | LCD 320x240 SED1330 (parport) | 128 GB System SSD, 2x2TB HDD ZFS

Jetzt mitmachen!

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