[ANNOUNCE] VDR developer version 1.5.9

  • Frisch aus der ML:


    Wohnzimmer: Techsolo TC-400 :: ASUS P5N7A-VM :: Intel Core 2 Duo E7400 :: GeForce 9300 onboard :: vdr 1.7.15 e-tobi ::
    In Rente: Pimped Scenic 600 (Bilder und Aufbau) :: PIII 600Mhz :: Hauppauge Nexus-S 2.1 4MB :: vdr 1.5.2 e-tobi ::


    "Wer denkt, dass Volksvertreter das Volk vertreten, der glaubt auch, dass Zitronenfalter Zitronen falten." Zeit zum ändern!

  • SUPER !!!


    War gerade am updaten auf 1.5.8 da ist schon 1.5.9 raus ...


    Jedoch:


    Entweder es liegt am VDR oder an meinem System, aber unter Suse 10.2 läßt sich nur noch die englische OSD-Sprache anwählen (bei 1.5.9)


    Bei 1.5.8 kam neben der Englischen Auswahl immer "LanguageEnglisch" (weis nicht mehr so genau wie der genaue Text im OSD stand), auf jeden Fall kam das dann stellvertretend für die wohl anderen Sprachen. Aber egal welches "LanguageEnglish" ich anwählte, das OSD blieb bei Englisch.


    Auch das make i18.n hab ich gemacht, brachte aber leider auch keinen Erfolg.


    Hab leider keine Zeit mehr fürs experimientieren, hab nur mal kurz Plain Probeinstalliert.
    Eventl. ist da nochn Fehler drin, ansonsten "Sorry" für den Post ... (denke aber mal eher, das es an der SUSE liegt ...)


    MFG
    Marco

  • Hi,


    mir haut's die Änderungen am cOsd um die Ohren wenn ich verschieden Plugins compiliere:


    Code
    1. Plugin skincurses:
    2. make[1]: Entering directory `/home/tom/mmbox/vdr-1.5.9/PLUGINS/src/skincurses'
    3. g++ -g -O3 -Wall -Woverloaded-virtual -march=athlon-xp -fPIC -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"skincurses"' -I/home/tom/mmbox/DVB/linux/include -I/usr/src/linux-2.6.22/include -I../../../include skincurses.c
    4. skincurses.c: In constructor ‘cCursesOsd::cCursesOsd(int, int)’:
    5. skincurses.c:75: error: no matching function for call to ‘cOsd::cOsd(int&, int&)’
    6. ../../../include/vdr/osd.h:259: note: candidates are: cOsd::cOsd(int, int, uint)
    7. ../../../include/vdr/osd.h:247: note: cOsd::cOsd(const cOsd&)
    8. make[1]: *** [skincurses.o] Error 1


    Code
    1. Plugin softdevice:
    2. make[1]: Entering directory `/home/tom/mmbox/vdr-1.5.9/PLUGINS/src/softdevice'
    3. g++ -g -O3 -Wall -Woverloaded-virtual -march=athlon-xp -fPIC -c -DHAVE_CONFIG -D__STDC_CONSTANT_MACROS -DPLUGIN_NAME_I18N='"softdevice"' -D_GNU_SOURCE -DPLUGINLIBDIR='"./PLUGINS/lib"' -I/home/tom/mmbox/DVB/linux/include -I/usr/src/linux-2.6.22/include -I../../../include -I/home/tom/mmbox/DVB/linux/include -I/usr/local/include -I/usr/local/include/ffmpeg -I/usr/local/include -I/usr/local/include/ffmpeg softdevice.c
    4. ../../../include/vdr/osd.h:394: warning: ‘virtual cOsd* cOsdProvider::CreateOsd(int, int, uint)’ was hidden
    5. softdevice.c:122: warning: by ‘virtual cOsd* cSoftOsdProvider::CreateOsd(int, int)’
    6. softdevice.c: In member function ‘virtual void cSoftDevice::MakePrimaryDevice(bool)’:
    7. softdevice.c:379: error: cannot allocate an object of abstract type ‘cSoftOsdProvider’
    8. softdevice.c:116: note: because the following virtual functions are pure within ‘cSoftOsdProvider’:
    9. ../../../include/vdr/osd.h:394: note: virtual cOsd* cOsdProvider::CreateOsd(int, int, uint)
    10. make[1]: *** [softdevice.o] Error 1


    Code
    1. Plugin xineliboutput:
    2. make[1]: Entering directory `/home/tom/mmbox/vdr-1.5.9/PLUGINS/src/xineliboutput'
    3. g++ -g -O3 -Wall -Woverloaded-virtual -march=athlon-xp -fPIC -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"xineliboutput"' -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DXINELIBOUTPUT_VERSION='"1.0.0rc2"' -DUSE_ICONV=1 -Wall -I/home/tom/mmbox/DVB/linux/include -I/usr/src/linux-2.6.22/include -I../../../include -o device.o device.c
    4. ../../../include/vdr/osd.h:394: warning: ‘virtual cOsd* cOsdProvider::CreateOsd(int, int, uint)’ was hidden
    5. osd.h:62: warning: by ‘virtual cOsd* cXinelibOsdProvider::CreateOsd(int, int)’
    6. device.c: In member function ‘virtual void cXinelibDevice::MakePrimaryDevice(bool)’:
    7. device.c:330: error: cannot allocate an object of abstract type ‘cXinelibOsdProvider’
    8. osd.h:54: note: because the following virtual functions are pure within ‘cXinelibOsdProvider’:
    9. ../../../include/vdr/osd.h:394: note: virtual cOsd* cOsdProvider::CreateOsd(int, int, uint)
    10. make[1]: *** [device.o] Error 1


    Ok, softdevice und xineliboutput brauchen halt einen Patch - aber dass skincurses rausfliegt?!?


    Gruß, ollo

  • Zitat

    Originally posted by ollo
    Hi,


    mir haut's die Änderungen am cOsd um die Ohren wenn ich verschieden Plugins compiliere:


    Code
    1. Plugin skincurses:
    2. make[1]: Entering directory `/home/tom/mmbox/vdr-1.5.9/PLUGINS/src/skincurses'
    3. g++ -g -O3 -Wall -Woverloaded-virtual -march=athlon-xp -fPIC -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"skincurses"' -I/home/tom/mmbox/DVB/linux/include -I/usr/src/linux-2.6.22/include -I../../../include skincurses.c
    4. skincurses.c: In constructor ‘cCursesOsd::cCursesOsd(int, int)’:
    5. skincurses.c:75: error: no matching function for call to ‘cOsd::cOsd(int&, int&)’
    6. ../../../include/vdr/osd.h:259: note: candidates are: cOsd::cOsd(int, int, uint)
    7. ../../../include/vdr/osd.h:247: note: cOsd::cOsd(const cOsd&)
    8. make[1]: *** [skincurses.o] Error 1


    Sorry, hatte ich übersehen. Das ist der neue "Level" Parameter.
    Wird in der nächsten Version gefixt.



    Klaus

  • Moin,


    Welchen hoechsten Level hat denn das OSD von VDR ?


    Wenn ich das richtig lese , verpasse ich nem OSD den Level 5
    und das OSD von Statusmeldungen hat nen niedrigeren,
    dann werden die Statusmeldungen angezeigt ?.
    Wie stelle ich jetzt fest , dass die Statusmeldung wieder verschwunden
    ist.
    Da ja mehrere OSD existieren, duerfte (if !cOsd::IsOpen()) ja nicht
    mehr den erwuenschten Effekt bringen, oder.
    Speziell OSD von Plugins , welche sich selbststaendig wieder aufbauen
    haetten dann nen ernstes Problem.


    Was ist 0 fuer nen special Key ??


    Ideal waere nen special Key (Zahl) ala "Ja, kannst mein OSD
    loeschen" ;).


    bye + thx

  • Hier der Fix (allerdings ungetestet):



    Klaus

  • Zitat

    Originally posted by Morone
    Welchen hoechsten Level hat denn das OSD von VDR ?


    Na 0 halt ;-)


    Zitat


    Wenn ich das richtig lese , verpasse ich nem OSD den Level 5
    und das OSD von Statusmeldungen hat nen niedrigeren,
    dann werden die Statusmeldungen angezeigt ?.


    Sowas könnte man machen.


    Zitat


    Wie stelle ich jetzt fest , dass die Statusmeldung wieder verschwunden
    ist.


    Wozu müsstest du das denn wissen?


    Zitat


    Da ja mehrere OSD existieren, duerfte (if !cOsd::IsOpen()) ja nicht
    mehr den erwuenschten Effekt bringen, oder.


    cOsd::IsOpen() sagt lediglich, ob gerade ein OSD mit Level 0 offen ist.


    Zitat


    Speziell OSD von Plugins , welche sich selbststaendig wieder aufbauen
    haetten dann nen ernstes Problem.


    Meinst du mit "sich selbststaendig wieder aufbauen", daß sie nach dem Schließen eines Menüs wieder in Erscheinung treten? Wenn ja, dann brauchen die dafür gar nichts spezielles zu tun, sondern einfach einen Level größer 0 zu verwenden.


    Aber Vorsicht: sobald Untertitel laufen (Level 1) würde z.B. ein OSD mit Level
    2 gar nicht mehr angezeigt werden, weil das Untertitel-OSD ständig vorhanden ist.


    Zitat


    Was ist 0 fuer nen special Key ??


    0 ist der Default-Level, und davon kann nur ein OSD existieren. Das ist einfach das, was es bisher auch war.


    Zitat


    Ideal waere nen special Key (Zahl) ala "Ja, kannst mein OSD
    loeschen" ;).


    Ungefähr so ist es gedacht, allerdings wird kein OSD automatisch gelöscht.


    Die Untertitel werden in einem OSD mit Level 1 dargestellt. Sobald ein Menü geöffnet wird, wird das Level 1 OSD "beiseite gelegt" und das Menü (mit Level 0) angezeigt. Wird das Menü geschlossen, wird automatisch das Untertitel-Menü wieder dargestellt.


    Damit kann der Untertitel-Generator laufend in sein OSD schreiben und muß sich keine Gedanken darüber machen, ob es nun gerade sichtbar ist oder nicht.


    Klaus

  • Das hoert sich schon mal alles sehr gut an.



    Vielleicht kann man gleich Weichen fuer die Zunkunft stellen,
    indem man im Setup die Prioritaet von Statusmeldungen einstellen
    kann.
    Ein Tauber waere vielleicht genervt bei nem TV-Movie Update,etc. ,
    wenn das OSD der Statusmeldungen den Level 0 (denke ich mal) hat.


    Was ich dann wiederum ideal finde waere, wenn
    VDR bei Level 1 anfaengt.
    Man koennte 0 dann fuer noch wichtigere/kritische Sachen
    verwenden als das VDR Menue ;).
    Denke da so an nen Daemon der das System ueberwacht.
    Dann noch sowas wie "svdrpsend.pl MESG [Prio/level] "Platte gleich voll"
    ".. schon bei 60 C" "..Prozessor glueht" oder
    Teekocher Plugin das nen Level 0 OSD zeichnet "..Kaffee fertig".
    War ja nur ein Vorschlag.


    Zitat

    Meinst du mit "sich selbststaendig wieder aufbauen", daß sie nach dem Schließen eines Menüs wieder in Erscheinung treten? Wenn ja, dann brauchen die dafür gar nichts spezielles zu tun, sondern einfach einen Level größer 0 zu verwenden.


    Aber Vorsicht: sobald Untertitel laufen (Level 1) würde z.B. ein OSD mit Level
    2 gar nicht mehr angezeigt werden, weil das Untertitel-OSD ständig vorhanden ist.


    In der Tat nen Problem , man muss immer erst Untertitel deaktivieren.
    Kann man dem Untertitel OSD nicht den Level 2 (oder noch hoeher) verpassen ?
    Dann kann man auch zwischendurch mal das Wetter, Nachrichten
    (OSD Level 1) abfragen waehrend man Untertitel nutzt.
    Das geht ja jetzt nur mit Level 0 was aeusserst unschlau waere :mua
    Problematisch wird es wohl auch noch , wenn ein Plugin aus einem
    anderen Plugin aufgerufen wird.

  • Zitat

    Original von kls
    Hier der Fix (allerdings ungetestet):



    Klaus


    Hi,


    den Fehler hatte ich auch. Der Patch sollte funktionieren ist bei mir zumindest durchgelaufen.


    kls
    welche Version soll den die nächte Stable werden wenn ich mal Fragen darf? Die 1.6.0?

  • Hi,


    ich will auch mal meinen Senf zum Thema OSD-Level dazugeben.
    Finde ich schon mal ne tolle Idee. Aber vielleicht sollte der VDR-Default Level nicht auf 0 gelegt werden, sondern z.B. auf 10. Das hätte den Vorteil, das wir ein wenig flexibler wären mit der Vergabe neuer Level.
    Noch schöner wäre wenn es auch negative Level geben würde. dann ist in beide Richtungen alles offen. Sowohl der Teekocher kann das VDR-Menü weckdrücken (was mir sehr wichtig wäre), als auch das "Mir ist zu heiß"-Plugin kann sich noch über den Teekocher legen (was noch wichtiger wäre).
    Ich würde auch vorschlagen den Untertitel nicht direkt auf die 1 festzunageln. Auch hier kann ein wenig Luft nicht schaden. Die 10 wäre bestimmt nicht verkehrt, oder halt einstellbar über die Makefile.config.
    Als Krönung fehlt nun eigentlich nur noch ne Funktion die mir den aktuell höchsten oder niedrigsten Level verrät. Darüber könnte ich dann ganz bequem ne Meldung nach ganz vorne oder ganz hinten platzieren, oder direkt hinter die gerade angezeigte, je nachdem für wie dringend ich sie halte.


    Claus

    MLD 5.1 mit vdr 2.2 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM -
    WD Green 6TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.3 mit vdr 2.3.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.1 mit vdr 2.2 - Banana Pi - softhddevice
    MLD 5.0 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT
    MLD 2.0 mit vdr 1.6 - SMT-7020s - 80GB HDD


  • ah ok dann hab ich´s verstanden :) danke!

  • Das VDR-Menü ist interaktiv und hat somit die höchste Priorität. es kann nicht sinnvoll "weggedrückt" werden.


    Wenn es während ein Menü offen ist eine dermaßen wichtige Nachricht gibt, dann kann die ja mit Skins.Message() ausgegeben werden.


    Für die Untertitel einen anderen Wert als 1 zu verwenden ist dagegen durchaus sinnvoll.
    Ich möchte aber da keine Konfgurationsorgien haben, denn dann macht es jeder anders und kein Plugin kann sich auf irgendwas verlassen. Ich wäre daher auch für den Wert 10.


    Den höchsten und niedrigsten Level abfragen zu können ist sicher auch nicht verkehrt.


    Klaus

  • @Klaus


    Hallo, was hältst Du denn davon
    LOCDIR auch als Start/config-Parameter einstellen zu können?


    z.B. /usr/vdr/vdr -d -u root -l 3 -c /etc/vdr --lirc /dev/lircd -L /usr/vdr/plugins -Pplugins -loc /usr/share/vdr/locale


    Das wäre ganz sinnvoll, besonders wenn man mal wieder vergessen hat Makefile anzupassen ;-)
    Notlösung dann, in das src Verzeichnis wechseln oder in das Verzeichnis in dem sich locale befindet und von dort aus vdr starten oder halt eben Makefile edit und compile, was alles ziemlich lästig/unnötig zeitintensiv ist :-(

    1.VDR mac mini 2009 4GBRam/ freevdr2.0a / TeVii S650 (oder TerraTec_Cinergy_S_USB oder TerraTec_S7>noch ohne HD/CI>) / Harmony 785
    2.VDR - Fanless: ATC620BX1/ AOpeni855GMEm-LFS/ CPU-M1,7GHz/ SST-NT01/ 512MB/ EFN-300/ 3*DVB-S-FFRev1.3/ avBoard/ IREinRev.4 / CF
    3.VDR - Fanless: Rebach-DT-HIFI-01/ ViaEpia5000/ 256MB/ DVB-S-FFRev1.5/ 120GBHD-SV1203N / GLCD/ IREinAus / opt. SPDIF
    4.VDR Samsung-SMT7020s

  • Zitat

    Original von celica
    Hallo, was hältst Du denn davon
    LOCDIR auch als Start/config-Parameter einstellen zu können?


    Gab es in der Mailingliste bereits einen Patch von Stefan Huelswitt:


    http://www.linuxtv.org/pipermail/vdr/2007-August/013951.html


    Oder siehe Anhang.


    Aufzurufen mit:


    Code
    1. -O DIR, --locale=DIR search for locale files in DIR

    Grüße
    Michi

    Dateien

    Wohnzimmer: Techsolo TC-400 :: ASUS P5N7A-VM :: Intel Core 2 Duo E7400 :: GeForce 9300 onboard :: vdr 1.7.15 e-tobi ::
    In Rente: Pimped Scenic 600 (Bilder und Aufbau) :: PIII 600Mhz :: Hauppauge Nexus-S 2.1 4MB :: vdr 1.5.2 e-tobi ::


    "Wer denkt, dass Volksvertreter das Volk vertreten, der glaubt auch, dass Zitronenfalter Zitronen falten." Zeit zum ändern!

  • danke,
    wäre halt nur schön wenn es ab den nächsten Versionen schon mit drin ist.

    1.VDR mac mini 2009 4GBRam/ freevdr2.0a / TeVii S650 (oder TerraTec_Cinergy_S_USB oder TerraTec_S7>noch ohne HD/CI>) / Harmony 785
    2.VDR - Fanless: ATC620BX1/ AOpeni855GMEm-LFS/ CPU-M1,7GHz/ SST-NT01/ 512MB/ EFN-300/ 3*DVB-S-FFRev1.3/ avBoard/ IREinRev.4 / CF
    3.VDR - Fanless: Rebach-DT-HIFI-01/ ViaEpia5000/ 256MB/ DVB-S-FFRev1.5/ 120GBHD-SV1203N / GLCD/ IREinAus / opt. SPDIF
    4.VDR Samsung-SMT7020s

  • Hi,


    was mir gerade aufgefallen ist bei mir ist auch das OSD Menü in Englisch? Ich habe mit make-i18n oder so ähnlich ;) den VDR installiert. Gibts da vielleicht noch etwas was ich im Makefile oder so anpassen muss?


    Ich kann im Menü auch nur die Sprache Englisch auswählen bzw. es ist keine andere Sprache vorhanden?

  • Hallo,


    habe mir gerade die 1.5.9 kompiliert, bekomme aber beim Start immer nen SEGFAULT.


    hier mal der gdb backtrace:



    Bei mir läuft das ganze auf debian sarge mit fontconfig2.3.1-2. Übrigens kommt das "vdr: no primary device found - using first device!" nur, weil ich vdr ohne dxr3-plugin gestartet habe. Mit Plugin geschieht aber das gleiche.
    Ist das ein bug im vdr oder in fontconfig?