GraphTFT Plugin erweitern

  • hallo,


    nachdem ich mir die sourcen angeschaut habe, musste ich leider feststellen, dass ich mich doch nicht in der lage sehe es selbst zu machen.
    deshalb wende ich mich mit meiner bitte an diejenigen, die es können und lust dazu haben.


    worum gehts ?


    mittlerweile sind einige vdr benutzer im besitz eines kleinen tft, welches vom plugin graphtft angesteuert wird. wer seinen (lcd-) fernseher über dvi betreiben möchte und gleichzeitig sein kleines tft über framebuffer versorgen will, hat das problem, dass es nicht geht. auch bei einer erfolgreichen dualhead konfiguration wird der framebuffer vom x-server überschrieben. bei nvidia lässt sich X und framebuffer überhaupt nicht zusammenbringen.


    ein lösungsansatz wäre das graphtft plugin zu erweitern, das es nicht nur in den framebuffer oder dvb karte ausgeben kann, sondern auch im fullscreenmode auf X11 darstellen kann.
    ich könnte mir gut vorstellen, dass man dazu teile des xinelibout-plugins verwenden kann.


    wer sich zutraut das umzusetzen und der vdr gemeinde zur verfügung zu stellen, tut der vdr gemeinde einen riesen gefallen.


    grüße,
    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • daran habe ich auch schon gedacht, wäre ja die einfachste lösung, weil graphtft das schon kann.


    aaaber so viel ich weiss, funktioniert direktfb nur mit wenigen grafikkarten, nvidia bleibt aussen vor. korrigier mich bitte, wenn ich da falsch liege.
    kann direktfb auflösungen von 1920x1200 ?


    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Hallo!


    Bei 1600x1200 ist da (theoretisch) Schluss:
    http://tldp.org/HOWTO/Framebuffer-HOWTO.html


    Ich habe es mit 6 verschiedenen ans Laufen gebracht,
    4 x Nvidia und 2 x ATI. Matrox soll auch ganz gut laufen.
    Das sind doch schon ne ganze Menge, oder?


    Gruß
    DerFux

    HW: K7S41 im Micro-ATX, Athlon XP 1900@1000, 370 GB HDD, SkyStar 2 und DXR3 , Harmony 525, IR-Einschalter Rev 4., Teufel Concept E Magnum, ICE-TFT
    SW: LinVDR 0.7, vdr-1.4.0, tarandor libs, Dr- Seltsam Kernel 2.6.15, linvdr-dxr3v8, ...

  • Zitat

    aaaber so viel ich weiss, funktioniert direktfb nur mit wenigen grafikkarten, nvidia bleibt aussen vor. korrigier mich bitte, wenn ich da falsch liege.


    Manch eine wird besser , die andere schlechter unterstuetzt.
    Habe es nur mit Matroxkarte am laufen. Nvidia sollte aber auch tun.
    But..probieren anstatt studieren...
    http://directfb.org/index.php?path=Main%2FSupport%2FGraphics


    Zitat

    kann direktfb auflösungen von 1920x1200 ?


    Was immer deine Karte hergibt. ;)

  • Nvidia-Karten können schon DirectFB, nur leider nicht per TV-Out. Dieser lässt imho nur per X oder VesaFB nutzen. Vesa fällt flach, weil völlig ohne Hardwarebeschleunigung und mit ekligem schwarzen Trauerrand. Eine andere Möglichkeit wäre, mit zwei Grafikkarten zwei X-Server aufzusetzen und sowohl Xine als auch Softdevice einzurichten.
    Die eine Hälfte läuft bei mir völlig problemlos. Ich habe das Xine-Plugin eingerichtet, auf dem die GraphTFT-Ausgabe läuft. GraphTFT ist es nämlich egal, ob es sich bei dem DVB-Device um eine echte DVB-Karte oder um ein Softdevice handelt. Xine sorgt dann für die Fullscreen-Ausgabe auf dem X-Server. Die 5% Prozessorlast, die Xine dabei verursacht, kann ich gut verschmerzen.

    Dr. Brömme grübelt:
    Acht Wochen, nachdem man ihm beim Kölner Straßenkarneval einen Gratiskorn angeboten hatte,
    dämmert ihm langsam, dass er einem hinterlistigen Alaafisten aufgesessen ist.

  • Zitat

    Original von udobroemme
    ... Ich habe das Xine-Plugin eingerichtet, auf dem die GraphTFT-Ausgabe läuft. GraphTFT ist es nämlich egal, ob es sich bei dem DVB-Device um eine echte DVB-Karte oder um ein Softdevice handelt. Xine sorgt dann für die Fullscreen-Ausgabe auf dem X-Server. ...


    sowas in der art habe ich schon mal probiert, leider ohne erfolg. ich wollte über xine tv gucken und graphtft sollte seine ausgabe an das xinelibout plugin schicken. ging aber nicht.


    wie hast du das denn konfiguriert ?


    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Zitat

    Original von duc
    wer seinen (lcd-) fernseher über dvi betreiben möchte und gleichzeitig sein kleines tft über framebuffer versorgen will, hat das problem, dass es nicht geht. auch bei einer erfolgreichen dualhead konfiguration wird der framebuffer vom x-server überschrieben. bei nvidia lässt sich X und framebuffer überhaupt nicht zusammenbringen.


    Hmmm... zumindest mit 2 getrennten Grafikkarten geht es wunderbar. Vielleicht verstehe ich dein Anliegen falsch, aber bei mir bringt eine AGP-Radeon über Framebuffer graphtft aufs PSOne, während eine PCI-Matrox den VGA-Eingang meines LCD-Fernsehers mit dem TV-Bild versorgt. Für mich wäre das auch eine "Dualhead-Konfiguration" im klassichen Sinne. Dank "isolatedevice" funktioniert das problemlos. Geht das denn tatsächlich mit Nvidia-Karten nicht?


    Gruß,
    Holger

  • Zitat

    wie hast du das denn konfiguriert ?
    frank


    • X-Server mit Nvidia-Treibern eingerichtet
    • VDR mit XINE- und GraphTFT-Plugin eingerichtet und gestartet
    • Xine mit den Parametern '-f -V xxmc -A null --no-splash --no-logo --no-gui --verbose=0' gestartet


    In meiner runvdr habe ich noch export DISPLAY="localhost:0.0" eingefügt, damit XINE den X-Server findet.

    Dr. Brömme grübelt:
    Acht Wochen, nachdem man ihm beim Kölner Straßenkarneval einen Gratiskorn angeboten hatte,
    dämmert ihm langsam, dass er einem hinterlistigen Alaafisten aufgesessen ist.

  • Zitat

    Original von HolgerR
    Hmmm... zumindest mit 2 getrennten Grafikkarten geht es wunderbar. Vielleicht verstehe ich dein Anliegen falsch, aber bei mir bringt eine AGP-Radeon über Framebuffer graphtft aufs PSOne, während eine PCI-Matrox den VGA-Eingang meines LCD-Fernsehers mit dem TV-Bild versorgt. Für mich wäre das auch eine "Dualhead-Konfiguration" im klassichen Sinne. Dank "isolatedevice" funktioniert das problemlos. Geht das denn tatsächlich mit Nvidia-Karten nicht?


    Gruß,
    Holger


    platz für zwei grafikkarten habe ich leider nicht. ich hatte mir auch schon mal eine matrox g550 gekauft, weil die für sowas besonders gut geeignet sein soll. die konnte aber am dvi ausgang nur 1280x1024 maximal, war also damit für mich ungeeignet.
    mit meiner nvidia 6200 habe ich das ganze schon einmal hinbekommen. xine lief am dvi ausgang und graphtft am vga ausgang via framebuffer. aber nach dem ich mal unvorsichtigerweise ein dist-upgrade gemacht habe, wurde das system auf xorg7 gehievt und seit dem gehts nicht mehr. ich könnte natürlich versuchen, die alte konfiguration wieder hinzupfrimeln, halte ich aber nicht für sinnvoll. irgendwann kommt wieder ein stück software daher, welches unbedingt ein dist-upgrade vorher braucht.


    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Zitat

    Original von udobroemme


    • X-Server mit Nvidia-Treibern eingerichtet
    • VDR mit XINE- und GraphTFT-Plugin eingerichtet und gestartet
    • Xine mit den Parametern '-f -V xxmc -A null --no-splash --no-logo --no-gui --verbose=0' gestartet


    In meiner runvdr habe ich noch export DISPLAY="localhost:0.0" eingefügt, damit XINE den X-Server findet.


    so weit, so gut. mich hätte an der stelle eher der aufruf von graphtft interessiert. war irgendwie /vdr/x wobei x die dvb karte sein soll. wie kann ich die richtige dvb karte herauskriegen - ausser durch rumprobieren ? (wenn xine und xinelibout installiert ist, werden bei mir 4 dvb karten gezeigt...)


    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Ich habe zwei DVB-Karten und das Xine-Device in meinem Rechner. Das Xine-Device ist das letzte, deshalb wird GraphTFT mit dem Parameter "-d vdr/2" aufgerufen (GraphTFT fängt bei 0 an, im Gegensatz zur VDR-config).

    Dr. Brömme grübelt:
    Acht Wochen, nachdem man ihm beim Kölner Straßenkarneval einen Gratiskorn angeboten hatte,
    dämmert ihm langsam, dass er einem hinterlistigen Alaafisten aufgesessen ist.

  • Und was macht man, wenn man nicht auf einen X Server verzichten möchte?
    Ich habe hier auch eine DualHead Konfig, also an einer Nvidia Karte zwei Bildschirme. Ich möchte den X - Server schon behalten, weil ich zum Beispiel so einfach bei Xine den Vollbildmodus verlassen kann und dann im Internet surfen kann (mit TV im Xine Fenster nebenbei). Auf dem anderen Bildschirm sollte dann das Graphtft Plugin seine Ausgabe haben, aber auch mit einem X - Server, um zB Graphtft zu "minimieren" und ein E-Mail Programm zu starten oder so.


    Auf der Graphtft - Plugin Seite im VDR - Wiki ist auf dem letztem Bild zu sehen, dass man
    das Graphtft in einem X - Fenster laufen lassen kann. Weiß jemand, wie man das genau so machen kann?


    Danke schon mal....


    artemis

  • Zitat

    Original von udobroemme
    Ich habe zwei DVB-Karten und das Xine-Device in meinem Rechner. Das Xine-Device ist das letzte, deshalb wird GraphTFT mit dem Parameter "-d vdr/2" aufgerufen (GraphTFT fängt bei 0 an, im Gegensatz zur VDR-config).


    ich wollte das gestern abend mal ausprobieren. tv sollte über xine laufen, graphtft über xinelibout. zum testen habe ich erst mal das graphtft plugin statt mit "-d /dev/fb0" mit "-d vdr/1" gestartet. die anzeige hätte dann auf meiner ff karte erscheinen sollen. doch soweit kommts gar nicht. vdr beebdet sich unmittelbar nach dem start. habs dann mit allen möglichen optionen (-d vdr/0 bis vdr/3) ausprobiert, erebnis ist immer das gleiche. so wie es aussieht kann bei mir das graphtft plugin nicht mit der ausgabe auf dvb device gestartet werden.
    verwendete versionen: graphtft 0.0.8 und vdr 1.4.0
    im syslog ist dazu leider nichts zu sehen.


    welche vdr version verwendest du ?


    grüße
    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Hi Frank,


    ich vermute, deine ffmpeg-Version ist zu "neu" (>0.4.8 ) Dann geht die Ausgabe über eine FF nicht. Stichwort: "Speicherzugriffsfehler".


    Es gibt zwei Lösungsmöglichkeiten:
    Entweder ffmpeg 0.4.8 zum Kompilieren von graphtft verwenden, oder du schaust mal, ob du mit Tobis neuestem Patch was anfangen kannst -> Thread


    Gruß,
    Holger

  • danke holger,


    das scheint zu stimmen, denn x-vdr installiert "ffmpeg-0.4.9-pre1".
    tobis patch habe ich eben geholt. in dem paket sind mehrere patche enthalten, zwei zum thema ffmpeg. die patche sehen auch irgendwie sonderbar aus, hab ich in der form zumindest noch nie gesehen. müssten die auf ffmpeg angewendet werden ?
    da gefällt mir der erste lösungsansatz besser. wie mache ich das am geschicktesten ? ffmpeg 0.4.8 in einem anderen verzeichnis installieren und graphtft zum übersetzen darauf verweisen (im makefile?) ?


    grüße,
    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700


  • Hi,


    wenn ich das recht erinnere, muß ffmpeg 0.4.8 nur "da sein", also in ein Verzeichnis entpackt werden und dann dieser Pfad im Makefile von graphtft eingetragen werden. So *ganz* genau habe ich es aber leider nicht mehr parat. Im Zweifelsfall findest du ab Seite 2 dieses Threads die Antwort. Da hatte ich übrigens auch 'nen Link zu ffmpeg 0.4.8 gepostet, für den Fall, dass du es nicht schon hast.


    Gruß,
    Holger

  • gestern habe ich den ganzen abend damit verbracht, das hinzukriegen. leider ohne erfolg.


    jetzt sind wir aber auch schon sehr weit vom eigentlichen thema dieses threads abgekommen. ich halte es immer noch für das beste, dem graphtft plugin eine generalüberholung zu verpassen.


    ich kann es leider nicht und sonst hat scheinbar auch keiner zeit/lust dazu. also belassen wirs dabei, war ja nur ne frage.


    grüße,
    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • jetzt hats endlich finktioniert *freu*
    mit ffmpeg 0.4.8 konnte ich graphtft nicht erfolgreich für die dvb ausgabe übersetzen, aber nachdem ich den folgenden patch auf graphtft angewendet habe, lief es. jetzt kann ich graphtft auf das xineliboutput-plugin leiten und so im x fenster (bei mir vollbild) graphtft bewundern.


    hier der patch, mit dem es ging. ich musste in dem patch allerdings den pfad zum graphtft plugin anpassen:


    grüße
    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

Jetzt mitmachen!

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