Hallo horchi,
ich habe auch noch einen Wunsch: abschalten des graphtft während des Betriebes, da ich mmsv2 mit Externalplayer und Ausgabe auf dem tft gerne nutzen würde.
Hallo horchi,
ich habe auch noch einen Wunsch: abschalten des graphtft während des Betriebes, da ich mmsv2 mit Externalplayer und Ausgabe auf dem tft gerne nutzen würde.
ZitatOriginal von odintg
Hallo horchi,
ich habe auch noch einen Wunsch: abschalten des graphtft während des Betriebes, da ich mmsv2 mit Externalplayer und Ausgabe auf dem tft gerne nutzen würde.
Klappt mit dem Proxy-Plugin wunderbar
Lg
Roman
Moin,
kann mich mal einer aufklären was DirectFB für einen Vorteil gegenüber normalen Zugriff auf das framebuffer device haben soll ?
Ersetz wird das framebuffer device ja wohl nicht und macht nur mehr Arbeit beim configurieren.
Abgesehen davon das es das System aufbläht.
*verwirrt*
Hallo, wie kann ich erreichen, dass graphtft die Ausgabe nur via graphtft-fe macht, und somit kein fb benötigt wird?
cu peje
ZitatOriginal von peje
Hallo, wie kann ich erreichen, dass graphtft die Ausgabe nur via graphtft-fe macht, und somit kein fb benötigt wird?
cu peje
Versuche mal als Argument ein ungültiges Device anzugeben Beispiel:
--device=none
Sollte so gehen habe es jedoch nicht ausprobiert ;).
Am besten im Makefile nur:
HAVE_IMLIB = 1
HAVE_IMAGE_MAGICK = 1
WITH_X_COMM = 1
und wenn gewünscht noch:
HAVE_GTOP = 1
aktivieren, also HAVE_DFB weglassen
horchi
Hallo Horchi, danke für den tip, hab zwischenzeitlich auf vdr/1 (zweite karte) eingestellt, doch ins nichts schreiben passt besser und klappt auch.
cu peje
Hallo Roman,
ZitatOriginal von Uatschitchun
Klappt mit dem Proxy-Plugin wunderbar
Evt. etwas OT: habe das proxy plugin auf der TODO Kann man damit das graphtft jederzeit starten und stoppen ? Oder nur stoppen ? Und auch automatisch starten (beim booten) ?
Gruß
Viking
ZitatOriginal von viking
Evt. etwas OT: habe das proxy plugin auf der TODO Kann man damit das graphtft jederzeit starten und stoppen ? Oder nur stoppen ? Und auch automatisch starten (beim booten) ?
Jepp, geht alles!
Darfst halt graphtft nicht mehr mittels '-P graphtft' starten, sondern über '-P proxy' und passender config des proxy-plugins!
Vorm MMS Start läuft folgendes:
mit
/root/min_user_activity
#!/bin/sh
function cmdinfo()
{
echo $0 [minutes]
exit
}
if [ $# != 1 ]; then
cmdinfo
fi
min=$1
echo $min | egrep -q '^[[:digit:]]+$' || cmdinfo
CMD=/usr/lib/vdr/svdrpsend.pl
#$CMD hitk menu
$CMD hitk setup
$CMD hitk 8
$CMD hitk down
for digit in `echo $min | sed "s/\(.\)/\1 /g"`
do
$CMD hitk $digit
done
$CMD hitk ok
$CMD hitk menu
Alles anzeigen
MMS halt dann als 'shutdown_command' 'mms_shutdown'
#!/bin/sh
killall -9 irexec
#sleep 5
/usr/lib/vdr/svdrpsend.pl PLUG proxy RSUM graphtft
/root/min_user_activity 180
Damit wird solange MMS läuft der automatische Shutdown des VDR und das graphtft abgeschaltet ... sobald MMS beendet wird, ist der automatische Shutdown (auch bei WakeOnTimer wichtig) wieder an und das graphtft startet wieder ...
Die plugin.proxy.conf:
Hoffe die OT-Antwort ist ok ?!
Nochmals ich, hab noch ein eye-candy problem:
graphtft-fe will immer die keys anlernen, ich hab die Steuerung jedoch über lirc, das Xcom=1 muss ich natürlich behalten ansonsten hätte ich kein Bild.
Frage wie sieht das Format der graphtft-fe keys in remote.conf aus?
(kann mir da ja dummys anlegen) oder gibts nen stillvolleren weg?
Danke für das supergeniale plugin
cu peje
ZitatAlles anzeigenOriginal von peje
Nochmals ich, hab noch ein eye-candy problem:
graphtft-fe will immer die keys anlernen, ich hab die Steuerung jedoch über lirc, das Xcom=1 muss ich natürlich behalten ansonsten hätte ich kein Bild.
Frage wie sieht das Format der graphtft-fe keys in remote.conf aus?
(kann mir da ja dummys anlegen) oder gibts nen stillvolleren weg?
Danke für das supergeniale plugin
cu peje
Hi,
normal musst du das anlernen nur einmal hinter dich bringen dann kannst du es auch remote via dem x-frontend mit Tastatur bedienen. Ansonsten kopiere einfach folgende Zeilen in deine remote.conf:
graphtft-fe.Up 0000000000000062
graphtft-fe.Down 0000000000000068
graphtft-fe.Menu 0000000000000047
graphtft-fe.Ok 0000000000000024
graphtft-fe.Back 0000000000000016
graphtft-fe.Left 0000000000000064
graphtft-fe.Right 0000000000000066
graphtft-fe.Red 0000000000000043
graphtft-fe.Green 0000000000000044
graphtft-fe.Yellow 0000000000000045
graphtft-fe.Blue 0000000000000046
graphtft-fe.0 0000000000000013
graphtft-fe.1 000000000000000A
graphtft-fe.2 000000000000000B
graphtft-fe.3 000000000000000C
graphtft-fe.4 000000000000000D
graphtft-fe.5 000000000000000E
graphtft-fe.6 000000000000000F
graphtft-fe.7 0000000000000010
graphtft-fe.8 0000000000000011
graphtft-fe.9 0000000000000012
graphtft-fe.Info 0000000000000048
graphtft-fe.Volume+ 0000000000000063
graphtft-fe.Volume- 0000000000000069
graphtft-fe.Mute 0000000000000067
Alles anzeigen
Dann bist du die Fragerei auch los.
Grüße
horchi
Hallo horchi,
wow, eine fe-Version von graphtft würde meine ganzen framebuffer Probleme
in Luft auflösen.
Ich bekomme beim Start von graphtft-fe den Fehler:
"Got unexpected protocol (842149920), aborting"
# DISPLAY=:0.1
# ./graphtft-fe -h 127.0.0.1 -p 2001 -n -r -f -W 800 -H 600 -e 3
21:34:55,859 Trying connecting to '127.0.0.1' at port (2001)
21:34:55,859 Connection to '127.0.0.1' established
21:34:55,859 looping ;)
21:34:55,859 looping ;)
21:34:56,419 Got unexpected protocol (842149920), aborting
21:34:56,419 Error: Communication problems, closing line!
21:34:56,419 Retrying in 5 seconds
21:35:01,455 Trying connecting to '127.0.0.1' at port (2001)
21:35:01,455 Connection to '127.0.0.1' established
21:35:01,475 Got unexpected protocol (842149920), aborting
21:35:01,475 Error: Communication problems, closing line!
21:35:01,475 Retrying in 5 seconds
Alles anzeigen
Kannst du dir auf diese Fehlermeldung einen Reim machen?
Was bewirkt eigentlich der Schalter -n (not Managed)?
Gruß, Tomekki
ZitatAlles anzeigenOriginal von Tomekki
Hallo horchi,
wow, eine fe-Version von graphtft würde meine ganzen framebuffer Probleme
in Luft auflösen.
Ich bekomme beim Start von graphtft-fe den Fehler:
"Got unexpected protocol (842149920), aborting"
CodeAlles anzeigen# DISPLAY=:0.1 # ./graphtft-fe -h 127.0.0.1 -p 2001 -n -r -f -W 800 -H 600 -e 3 21:34:55,859 Trying connecting to '127.0.0.1' at port (2001) 21:34:55,859 Connection to '127.0.0.1' established 21:34:55,859 looping ;) 21:34:55,859 looping ;) 21:34:56,419 Got unexpected protocol (842149920), aborting 21:34:56,419 Error: Communication problems, closing line! 21:34:56,419 Retrying in 5 seconds 21:35:01,455 Trying connecting to '127.0.0.1' at port (2001) 21:35:01,455 Connection to '127.0.0.1' established 21:35:01,475 Got unexpected protocol (842149920), aborting 21:35:01,475 Error: Communication problems, closing line! 21:35:01,475 Retrying in 5 seconds
Kannst du dir auf diese Fehlermeldung einen Reim machen?
Was bewirkt eigentlich der Schalter -n (not Managed)?
Gruß, Tomekki
Hi,
läuft auf dem Port 2001 wirklich das Plugin und nix anderes?
Wenn man es 'not managed' startet ist es ein einfaches X-Fenster ohne Rahmen und nicht unter Kontrolle das Window-Manager, damit funktioniert dann auch nur die Mausbedienung nicht jedoch die Tastatur.
horchi
Hallo horchi,
ja, es läuft nur vdr auf diesem Port. Das habe ich auch mit netstat geprüft und in meiner vdradmin.conf habe ich ebenfalls diesen Port eingetragen und kann mit vdradmin (wenn es läut) über diesen kommunizieren.
Außerdem habe ich zum Testen mal den freien Port 1234 ausprobiert; In diesem Falle bekomme ich auch eine eindeutige Fehlermeldung dass die Verbindung nicht zur Stande kommt. Zudem erscheint auch die Meldung "Connection to '127.0.0.1' established" nicht.
Ich versuche heute Abend mal die TCP-Kommunikation abzuhören, möglicherweise hilft das weiter.
Muss ich eventuell VDR auch neu kompilieren?
Gruß, Tomekki
ZitatAlles anzeigenOriginal von Tomekki
Hallo horchi,
ja, es läuft nur vdr auf diesem Port. Das habe ich auch mit netstat geprüft und in meiner vdradmin.conf habe ich ebenfalls diesen Port eingetragen und kann mit vdradmin (wenn es läut) über diesen kommunizieren.
Außerdem habe ich zum Testen mal den freien Port 1234 ausprobiert; In diesem Falle bekomme ich auch eine eindeutige Fehlermeldung dass die Verbindung nicht zur Stande kommt. Zudem erscheint auch die Meldung "Connection to '127.0.0.1' established" nicht.
Ich versuche heute Abend mal die TCP-Kommunikation abzuhören, möglicherweise hilft das weiter.
Muss ich eventuell VDR auch neu kompilieren?
Gruß, Tomekki
Hi,
nun bin ich etwas verwirrt, mit dem vdradmin hat das Plugin und auch das Frontend nichts zu tun! Das Frontend muss ich zu dem Port verbinden auf welchem der Listener des graphtft Plugins läuft. Das ist dann auch schon die Erklärung für das beschriebene Problem. Der Default Port ist 2039, der muss beim fe nicht angegeben werden. Nur wenn du dem graphTFT Plugin beim Start einen anderen Port mitgibst nusst du diesen dann auch bei fe angeben.
Zum vdr compilieren, der vdr muss wenn man ihn patcht immer compiliert werden, sofern sich dabei (wie beim graphTFT) seine API ändert sind auch alle Plugins neu zu übersetzen.
Viele Grüße
horchi
Hallo horchi,
ich war mit dem Port 2001 wirklich auf auf dem Holzweg. Bei dem Port handelt es sich um das SVDRP (Simple VDR Protokoll) um VDR fernzusteuern.
Wieder was dazugelernt
Mit dem richtigen Port erhalte ich die leider folgenden Fehler:
# DISPLAY=:0.1
# ./graphtft-fe -h 127.0.0.1 -n -r -f -W 800 -H 600 -e 3
21:55:58,189 Trying connecting to '127.0.0.1' at port (2039)
21:55:58,189 Connection to '127.0.0.1' established
21:55:58,891 Got welcome
21:55:58,919 Error: Communication problems, closing line!
21:55:58,919 Retrying in 5 seconds
Ich verwende VDR in Version 1.4.7, falls dies interessant ist.
Hast du noch eine Idee was bei mir falsch laufen könnte?
Gruß, Tomekki
HiTomekki,
wende bitte mal dieses Patch auf den Frontend Code an, damit wird bei der Fehlermeldung noch ein Statuswert mit ausgegeben. Ich hoffe das sich damitdas Problem besser eingrenzen lässt.
--- ../graphtft-fe.org/comthread.cc 2007-09-02 22:25:07.000000000 +0200
+++ comthread.cc 2007-09-03 21:58:12.000000000 +0200
@@ -76,7 +76,8 @@
{
if (status != TcpChannel::wrnNoEventPending)
{
- tell(eloAlways, "Error: Communication problems, closing line!");
+ tell(eloAlways, "Error: Communication problems, closing line! status was (%d)",
+ status);
line->close();
break;
@@ -85,10 +86,11 @@
continue;
}
- if (read() != 0)
+ if ((status = read()) != 0)
{
line->close();
- tell(eloAlways, "Error: Communication problems, closing line!");
+ tell(eloAlways, "Error: Communication problems, closing line!" status was (%d),
+ status);
}
}
Alles anzeigen
BTW: Du verwendest die fe Version aus dem gleichen tar wie auch das graphTFT Plugin?
Grüße
horchi
Hallo horchi,
die Ausgabe nachdem ich deinen Patch angewendet habe, sieht wie folgt aus:
01:16:36,856 Trying connecting to '127.0.0.1' at port (2039)
01:16:36,856 Connection to '127.0.0.1' established
01:16:37,599 Got welcome
01:16:37,659 Error: Communication problems, closing line! status was (-93)
01:16:37,659 Retrying in 5 seconds
01:16:42,690 Trying connecting to '127.0.0.1' at port (2039)
01:16:42,690 Connection to '127.0.0.1' established
01:16:42,827 Got welcome
01:16:42,855 Error: Communication problems, closing line! status was (-93)
01:16:42,855 Retrying in 5 second
ZitatOriginal von horchi
Du verwendest die fe Version aus dem gleichen tar wie auch das graphTFT Plugin?
Ja, das tue ich.
Mir ist grad noch aufgefallen, dass sich VDR nach dem Verbindungsversuch von graphTFT neustartet. Die Logdatei (/var/log/messages) sieht dabei Fehlerfrei aus:
vdr: [27973] starting plugin: graphtft
Sep 4 01:16:46 duo vdr: [27973] Device is 'none'
Sep 4 01:16:46 duo vdr: [27973] Loding themes
Sep 4 01:16:46 duo vdr: [27973] loading /usr/share/vdr/graphTFT/themes/DeepBlue/DeepBlue.theme
Sep 4 01:16:46 duo vdr: [27973] Loaded 1 themes
Sep 4 01:16:46 duo vdr: [27973] Activated theme 'DeepBlue'
Sep 4 01:16:46 duo vdr: [28016] GraphTFT plugin tcp communication thread started (pid=27973)
Sep 4 01:16:46 duo lircd-0.8.2[7983]: accepted new client on /dev/lircd
Sep 4 01:16:46 duo vdr: [27973] remote control XKeySym - learning keys
Sep 4 01:16:46 duo vdr: [28018] LIRC remote control thread started (pid=27973, tid=28018)
Sep 4 01:16:46 duo vdr: [28017] GraphTFT plugin display thread started (pid=27973)
Sep 4 01:16:54 duo vdr: [28004] [input_vdr] No data in 8 seconds, queuing no signal image
Sep 4 01:16:56 duo vdr: [27973] remote control graphtft-fe - learning keys
Sep 4 01:17:06 duo vdr: [27973] remote control LIRC - learning keys
Alles anzeigen
Ja ich weiß, ich muss mal meine Uhr stellen
Ich hoffe die Informationen Helfen dir weiter ...
Gruß, Tomekki
Hi Tomekki,
ZitatMir ist grad noch aufgefallen, dass sich VDR nach dem Verbindungsversuch von graphTFT neustartet.
Der Absturz erklärt natürlich den Verbindungsabbruch. Welche Version des Plugin verwendest du genau? Könntest du bitte einmal den Backtrace eines solchen Absturzes posten, damit sollte man das Problem identifizieren können.
Grüße
horchi
Hallo horchi,
ich verwende die Version vdr-graphtft-0.1.7_alpha auf
meiner Gentoo Maschine:
duo tmk # emerge -pv
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] media-plugins/vdr-graphtft-0.1.7_alpha 0 kB [1]
Total: 1 package (1 reinstall), Size of downloads: 0 kB
Portage tree and overlays:
[0] /usr/portage
[1] /usr/portage/local/layman/vdr-testing
Alles anzeigen
Ich versuche gleich mal das Backtrace hinzubekommen.
Vielen Dank für deine Geduld!
Gruß, Tomekki
Hallo horchi,
bei der Ausgabe von gdb bekomme ich bis jetzt nur die spärliche Ausgabe:
gdb --pid=17302
duo # gdb --pid=17302
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Attaching to process 17302
Reading symbols from /usr/bin/vdr...(no debugging symbols found)...done.
[...]
(gdb) bt
#0 0x00002b76d5d1d727 in pthread_cond_timedwait () from /lib/libpthread.so.0
#1 0x00000000004b5063 in cCondVar::TimedWait ()
#2 0x000000000049b902 in cRemote::Get ()
#3 0x00000000004bce2b in main ()
Alles anzeigen
Das wird dir sicher nicht helfen. Hmm. dabei habe ich vdr mit debug-Informationen kompiliert.
Ich bleib dran, wäre aber über Hilfestellungen dankbar. Ich habe halt bis jetzt nicht viel mit Linixprogrammierung zu tun gehabt.
Gruß, Tomekki
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!