vdr-live: ERROR: character conversion failed

  • Versuche gerade neuen vdr unter gentoo aufzusetzen, vdr 2.6.9 als server, im prinzip bloss mit vdr-live plugin, 3.0.6.

    Aber sobald is mich per browser verbinde, und username/passwort eingetippt habe, kriege ich nur

    "ERROR: character conversion failed"

    Betraf nicht seiten wie remote.html, sondern bloss welche wo irgend was von VDR programmen war.

    Teilweise hab ich das wohl hinbekommen indem ich ein altes setup.conf kopiert habe, aber es passiert immer wieder.

    Voll nervig. Wie kann ich das troubleshooten ?

  • Hi te36, der Screenshot sieht mir danach aus, dass an den fraglichen Stellen ein Zeichen für einen andern Zeichensatz als UTF-8 interpretiert werden soll. Live sendet folgenden DOCTYPE im HTML-Header:

    Code
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    … und weil, soweit ich das aus dem Code herauslesen kann, nirgends ein charset angegeben wird, geht der Browser standardmäßig von einer UTF-8-Zeichenkodierung aus.

    Dass du die englischen Texte angezeigt bekommst, deutet darauf hin, dass für den VDR keine der Übersetzungen referenziert wird, und stattdessen die Standardtexte in Englisch verwendet werden. In Live 3.0.6 werden die Strings "« Prev" (« = U+00AB) und "Next »" (» = U+00BB) zudem noch nicht übersetzt, sondern aus dem Quellcode literal ins HTML übernommen. Dabei kann ich auf die Schnelle nicht sagen, welche Zeichenkodierung im Quellcode verwendet wird und somit ins HTML einfließt; das mag auch von den Spracheinstellungen im Linux abhängen. Einfach die HTML-Seite einmal mit einem Texteditor öffnen, der dir die Zeichenkodierung anzeigt (oder hilfsweise den Quellcode im Browser, z.B. im Firefox "Inspect" aufrufen und die Fehler in der Konsole beachten). Notfalls hilft nur ein Hex-Editor, um die Bytefolge an dieser Stelle der HTML-Seite ermitteln zu können.

    Ich würde zudem vorschlagen, die Einstellung von LANG im Environment zu prüfen. Weil ich das Deutsch-Englisch-Kuddelmuddel nicht besonders mag, findet sich bei mir mit Ubuntu 22.04 die folgende Einstellung:

    • LANG=en_US.UTF-8

    Mehr fällt mir dazu im Moment auch nicht ein, hoffe aber, ich konnte zumindest ein paar hilfreiche Hinweise geben.

    Zwischen Live 3.0.6 und dem aktuellen Live 3.3.10 ist so gut wie kein Stein auf dem anderen geblieben. Wenn du schon von vorne anfängst, würde ich dir empfehlen, VDR 2.7.3 (wirft ungepatcht je nach Compiler noch ein paar Warnings, die du getrost ignorieren kannst) und Live 3.3.10 zu verwenden. Das lädt umfangreiche Seiten (z.B. mit Aufzeichnungen) auch deutlich schneller als das alte. Und anders als auf der About-Seite ("?") dargestellt (required), läuft es (wie bei mir) auch ohne den TvScraper. Nur EpgSearch würde ich dir noch empfehlen, weil die Suchtimer doch einiges an Komfort bei der Programmierung bringen. Natürlich jeweils die aktuellen Versionen aus den Gits.

    Hardware: Antec NSK2480, Asus P8B75-M LX, Intel Core i5-3570T, 4 GB RAM, NVIDIA GT610, TT-Premium S2-6400, 128 GB SSD, 14 TB HDD, Pioneer BDR-207EBK
    Software: Ubuntu 22.04 LTS mit Kernel 6.8 und VDR 2.7.3 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinenigmang, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • Das Live plugin lief korrekt als ich den VDR 2.6.9 auf UTF8 gestellt hatte. Ich habe aber mehrere RPI1 basierte VDR clients, die ich nicht mehr auf UTF8 umstellen kann/will. Und einiges an scripten. Mein alter VDR 2.2.0 mit VDR live 0.3.0_p20130504-r1 lief ja auch 10 Jahre lang prima mit ISO88591.

    Ich habe jetzt 3.3.10 am laufen im vdr 2.6.9, und ich habe jetzt im VDR auch de_DE als LANG laufen.

    - Die GUI von live ist jetzt deutsch

    - Die flaschen Graphiken sind nicht mehr "^^A << Prev / Next >> A^^", sondern "^^A << Zurück / Vor >> A^^". Also da werden immer noch irgendwelche Zeichen mit ISO8859 kodierung erzeugt, die dann als UTF8 nicht richtig angezeigt werden.

    - whats_on.html produziert immer noch "Error character conversion failed".

    - Alle anderen seiten werden im Prinzip richtig gerendered, bloss das alle deutschen Umlaute etc. halt nur als '?' oder anderen Ersatzzeichen auftauchen.

    Das ist mit tntnet 3.0.0

    Wer hat da den ISO8859 support kaputtgemacht ? tntnet oder vdr-live selbst ?

    vdradmin-am hat uebrigens diese Probleme nicht. Das laeuft prima. Bloss das das halt kein funktionierendes OSD display hat. Und nur im OSD habe ich halt devstatus um signalpegel anzuzeigen. Oder die VDR settings.

    *seufz*

  • Doch:

    Einfach "Fernseher" wählen, ggf. noch die Größe (1:1, 1:2, 1:4) und im FB-Menü rechts auf "Menu" oder nur "ok" um die now/next-Anzeige zu sehen.

    Allerdings funktioniert das nur, wenn ein Ausgabeplugin läuft.

    vdr User #2022 - hdvdr2:

    Lenovo SFF M83, Intel(R) Core(TM) i5-4670S, 32 GB Ram, zram-swap/tmp, ubuntu-focal+ESM, softhddevice-cuvid, ffmpeg-6.1(git)

    ddbridge-6.5 mit 2xDVB-S2 und (Flex) 2xDVB-C/T Tunern, nvidia-GF1050Ti SFF (nvidia-dkms-565.57.01), System SSD btrfs,

    timeshift-btrfs, Video 8TB HDD XFS/cow, yavdr-ansible-2.7.3-seahawk, epgd-git mit plugins, Kernel 6.12.9+dddvb-0.9.39-git

    vdradmin-am-3.6.13-git, vdr-live-ng, vdrmanager (Smartphones als FB)

  • Wer hat da den ISO8859 support kaputtgemacht ? tntnet oder vdr-live selbst ?

    tntnet 3.0.0 hat übel reagiert, wenn irgendwelche nicht-utf8 Sequenzen übertragen wurden.

    Daher habe ich in live den UTF8 Sanitzer eingebaut, der alles, was nicht utf-8 ist, durch ? ersetzt ...

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.6x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x

  • Die einfachste Lösung heute ist ohnehin utf-8. iso-8859xx ist tot..

    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler
    Display Spoiler


    to spoil
    verderben
    beschädigen
    plündern
    behindern
    berauben
    vereiteln
    rauben
    zerstören [fig.] [verderben, verunstalten]
    vergällen
    verhageln [fig.]

  • wirbel Siehe oben. Ich habe halt Abhaengigkeiten, die ich nicht kurzfristig auf UTF8 bringen kann. Die will ich ja mal ersetzen, aber das ist viel arbeit: den guten RPI videotreiber fuer VDR gibts AFAIK nicht fuer RPI4/5, die neueren Linux Kernel haben lirc kaputtgemacht, die ganzen client plugins mit patches die ich verwende existieren nicht fuer VDR 2.4 oder neuer, und das ganze linux system so zu optimieren, das einem nicht dauernd die micro-SD Karten abrauchen - Rattenschwanz halt.

    Das tntnet da 8859 kaputt gemacht hat in 3.0 ist ja nicht das einzige Problem. Ich verwende ja auch gentoo, und die sind inzwischen wohl extra schnell dabei, alte laufende Software rauszuschmeissen. Also tntnet/cxxtools 2.2.1. Wahrscheinlich weil es nicht auf Anhieb compiliert hat.

    Habe mir fuer 2.2.1 also erst mal wieder ebuilds gebastelt und vdr-live 3.0.3 wieder installiert. Laeuft prima mit Umlauten. Wie frueher ;)

    3.3.10 laeuft auch ohne "conversion failure" mit tntnet/cxxtools 2.2.1 aber da sind natuerlich alle Umlaute durch "?" ersetzt. Und wahrscheinlich kriege ich da auch keine timer gemanaged in denen Umlaute vorkommen. Von daher bin ich wohl mal bei der alten Version von vdr-live eingefroren bis ich mal UTF8 faehige neue clients und VDR habe. Aber nachdem es ja bei vdr-live kein CHANGELOG gibt weiss ich ja eh nicht, was ich alles an neuen Features verpasse :]

    tntnet scheint uebrigens tod zu sein. webseite zumindestens ist nicht mehr erreichbar.

  • tntnet 3.0.0 hat übel reagiert, wenn irgendwelche nicht-utf8 Sequenzen übertragen wurden.

    Daher habe ich in live den UTF8 Sanitzer eingebaut, der alles, was nicht utf-8 ist, durch ? ersetzt ...

    Eigentlich hätte ich den Vorschlag, die (in diesem Fall: deutsche) PO-Datei von UTF8 auf 8859 zu rekodieren und die Zeichensatz-Spezifikation im Header entsprechend (d.h. voin charset=utf-8 auf charset=iso-8859-1) zu ändern:

    Allerdings dürfte der UTF8-Sanitizer dabei vielleicht eher schädlich sein…

    Hardware: Antec NSK2480, Asus P8B75-M LX, Intel Core i5-3570T, 4 GB RAM, NVIDIA GT610, TT-Premium S2-6400, 128 GB SSD, 14 TB HDD, Pioneer BDR-207EBK
    Software: Ubuntu 22.04 LTS mit Kernel 6.8 und VDR 2.7.3 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, extrecmenu, recsearch, femon, live, markad, mlist, osdteletext, remote, screenshot, skinenigmang, skinnopacity, streamdev, systeminfo, undelete, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!