Teletext mit zvbi Bibliothek?

  • Hallo,


    Ich hätte eine Anregung für ein neues teletext Modul:


    ich habe mir den Code von osdteletext angeschaut und auch den von libzvbi. Während in osdteletext die Basisanzeige realisiert ist, implementiert libzvbi (nahezu?) den gesamten Teletext Standard ETSI EN 300 706. Um zu sehen, wie libzvbi arbeitet, habe ich diese Bibliothek installiert, dazu das Perl Modul Video::ZVBI und dann mit einem leicht modifizierten Skript aus dem examples Directory des Perl Moduls browse-ttx.pl bei laufendem vdr den Teletext separat angezeigt (siehe angehängtes Bild).


    Um das als Plugin hinzubekommen, müsste das Device und die Teletext PID übergeben werden, die Interaktionen mit Tasten und Fernbedienung programmiert werden und die Grafikausgabe osd tauglich gemacht werden. Wäre das machbar?

  • Hi Wof06,


    ja, mit zvbi lässt sich einiges realisieren.



    Doc gibt's hier



    Ich habe vor einem Jahr oder so mal angefangen ein Plugin zu schreiben. Projektname 'HiText'.


    Kurz und dreckig geschrieben, habe ich das ein oder andere zum Laufen gebracht:
    * Eigener Decoder (und damit Cache) für jeden Kanal.
    * PES-Pakete an zvbi schicken und dekodieren lassen.
    * Seite von zvbi rendern lassen und das Bitmap auf dem OSD anzeigen.
    * Minimaler Browser


    Hatte angefangen das Plugin neu zu schreiben, es dann aus zeitlichen Gründen aber erstmal pausiert.



    Ich bin damals auf ein paar Schwierigkeiten mit zvbi gestoßen:


    * Ein paar high level Funktionen lassen (noch) ein paar Feinheiten vermissen: Z.B.:
    Die von zvbi zur Verfügung gestellte Funktion ein 32Bit-Bitmap einer Seite zu rendern, kommt (noch) nicht mir Transparenz klar. Auch sind die Bytes des Bitmaps anders kodiert als in VDRs OSD. BGRA anstatt ARGB oder irgendwie sowas. Habe dann Bytes verschoben und bin Pixel für Pixel durchs Bitmap gegangen, um die Transparenzinformation hinzuzufügen.
    Das alles hat sich natürlich als recht langsam erwiesen. Auf einem Core2Duo wohl noch erträglich, auf schwächerer Hardware eher störend.
    Es gibt aber z.B. eine Funktion die eine Seite als PNG rendert. Dies mit Transparenz.
    * Die low level Funktionen und Datenstrukturen sind in der Regel private. So lässt sich schwieriger eine eigene Routine zum Rendern schreiben. Zumindest ohne an zvbi zu patchen, was ich eher nicht will.


    Sonstiges worüber man nachdenken könnte/sollte:
    * Die maximal 256 Farben des VDR OSDs sind für manche Teletext-Seiten höheren Levels eine Einschränkung. (Das könnte man auch einach aussitzen bis das Truecolor OSD kommt, falls es kommt.)
    * Für FF-Karten nur 4 bzw 16 Farben. Vielleicht ähnliche Lösung wie bei osdteletext. Oder FFs ganz außen vor lassen. und eher:
    * Rendering/Upscaling für HD-Displays
    * ...



    Unterm Strich denke ich, lohnt es sich zvbi zu nutzen. Man muss sich um quasi nichts aus der ETSI Norm rumschlagen.


    Generell habe ich Lust daran weiterzumachen. Werde frühstens in 3 Wochen wieder dazu kommen.
    Besteht überhaupt Interesse an einem HiText-Plugin?


    Vielleicht findet sich ja auch noch ein/e weitere/r (Hobby)programmierer/in zur Unterstützung.?



    Grüße,
    tobe

    KNC1 DVB-C (MK3); Unitymedia (KabelBW)
    Telekom Entertain
    Core 2 Duo E6600 (2x 2400 MHz), 4 GB RAM, GA-965P-DS3 (rev. 3.3), GeForce GT 630 1GB rev2
    Ubuntu Trusty 14.04 64Bit, yavdr unstable ppa

  • Zitat

    Original von tobethedope
    Besteht überhaupt Interesse an einem HiText-Plugin?


    Aber 100%. Nichts gegen das osdtelext-Plugin, aber seitdem ich tuxtxt von der Dreambox gesehen habe, habe ich mir schön öfter ein solches Plugin für den VDR gewünscht.


    Zitat

    Original von tobethedope
    (Das könnte man auch einach aussitzen bis das Truecolor OSD kommt, falls es kommt.)


    Das kommt mit Sicherheit. Das hat Klaus erst vor kurzem wieder bestätigt.


    Aus dem oberen Screenshot wird der Unterschied nicht wirklich deutlich, daher gibts hier noch einen Direktvergleich zwischen Teletext Level1.0(Standard) und Level2.5(HiText) von Wikipedia


    [Blockierte Grafik: http://upload.wikimedia.org/wikipedia/commons/4/4d/Teletext_level1_0_lebel2_5.jpg]

  • Das wäre eine durchaus gute Grundlage für einen Neuanfang bei Teletext. Der bisherige Dekoder kommt ja kaum über Level 1.0 hinaus, und der Standard wird ab da ernsthaft kompliziert.


    Mit dem Rendern auf dem OSD bleibt aber noch genug Arbeit übrig. Wenn die Library nur komplette Bitmaps heraus gibt, wird alles außer truecolor-OSD schwierig, und die Unterstützung für FF-Karten fast unmöglich. (Der derzeitige Renderer von osdteletext ist übrigens ursprünglich von mir.)


    Aber vielleicht kann man ja mit den zvbi-Entwicklern zusammen arbeiten, und einen für unsere Zwecke besser geeigneten Renderer einbauen. Im einfachsten Fall könnte uns der Renderer Anweisungen übermitteln, an welche Stelle welche Zeichen-Bitmap in welchen Farben gehört. Wenn ich mich recht erinnere, sieht der Teletext-Standard auch nur eine begrenzte Palette vor, und die Grafik wird über benutzerdefinierte, zweifarbige Zeichen realisiert. Nichts also, was das klassische OSD nicht auch kann, abgesehen von der Größe der Farbpalette auf FF-Karten. Und da schummeln wir uns ja bereits jetzt dran vorbei.


    Gruß,


    Udo

  • Da ich von der dbox2/Neutrino Front bin , hab ich mich schon die ganze Zeit gewundert warum gerade beim vdr mit seinem teletext modul das ganze doch etwas "altbacken" daherkommt.
    es wuerde ja schon reichen solche "features" zu implementieren womit man mit dem cursor die seitennummern auf der angezeigten seite auswaehlen und mit OK laden kann... das waer schon mal ein fortschritt.


    gruss gerd

    vdr => p8b75-m lx / pentium g2020t / 8 GB Ram / zotac gt 630 / cine S2 V5.5 / 60 gb ocz ssd / 640 gb wd scorpio blue / display noritake 256x64-3900 / chenbro PC71023 gehaeuse / yavdr stable / softhddevice


    spielsystem => p8b75-m le / intel core i3 3220T / ubuntu lts 14.04 / 16 GB ram / zotac gt 630 / cine S2 V6.2 / yavdr stable pakete / softhddevice / pulseaudio+alsa


    spielwiese => Zotac Zbox ID45 / 120 GB mSATA / via Satip => Octopus Net / yavdr stable / softhddevice

  • Was mich pauschal stört: Letztes Release war 2008.


    Ich habe schon Libraries in Projekten ersetzt, die weniger lange ungepflegt sind.


    Wegen dem Problem mit den Pixmaps: Wäre es nicht denkbar für "nicht-True-Color-OSDs" die Pixmap schlicht zu indizieren? Könnte mir vorstellen das die libgd sowas anbietet. Wäre mir (als SD-FF-Nutzer) auf jedem Fall lieber als garkein Support.

Jetzt mitmachen!

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