[xslt/tvm2vdr] transformation von Sonderzeichen

  • Hallo,


    wie einige schon bemerkt haben kommt es immer wieder vor das beim Einladen der tvmovie Dateien in tvm2vdr einige Dateien nicht verarbeitet werden können.


    Meiner Meinung nach liegt dieses an speziellen Sonderzeichen, welche schon im alten Perl Skript ersetzt/entfernt wurden.


    Hier mal die Perl Trasformation:



    Die Frage ist ob hier im Board jemand so gut mit xslt umgehen kann und so eine Transformation von Perl portieren, und ins Stylesheet einbauen kann. Vielleicht kennt ja ansonsten jemand jemaden, der einen kennt der das kann :)


    Vielen Dank für eure Unterstützung


    Grüße Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



    Einmal editiert, zuletzt von CKone ()

  • Danke Marc,


    aktuell fassen wir die Daten ausschließlich mit xslt über das Stylesheet an und packen sie von da unangetastet ins epg. Das Ziel ist es dieses Design auch so beizubehalten.


    Grundsätzlich funktioniert das auch, es gibt schon replace/translate Funktionen mit denen wir schon arbeiten und bseispielsweise newlines entfernen. Dennoch kriegen wir das nicht so recht hin, kann sein das es nur ein Syntax Problem ist.


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Moin CKOne !


    Das sieht mir aus wie "ausgeschriebene" Unicode Character.
    http://www.w3schools.com/tags/ref_symbols.asp
    http://scm.dotsrc.org/viewvc.cgi/claws-mail/claws/src/html.c?view=patch&r1=1.12.2.21&r2=1.12.2.22&pathrev=gtk2


    Sind die Character so schon in den Input Daten, Welches encoding haben die INPUT Daten ? Würd mich freuen wenn du mir mal so eine problematische Datei per Mail schicken würdest.

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • gern, bitte deine Mail per pm


    mit xslt kannst du die übrigens lesen, nur der VDR nimmt sie ums Verrecken nicht :(


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Da mich das Thema wegen einem anderen Projekt selbst auch interessiert, habe ich noch mal nach geschaut. Das Totenkreuz zum Beispiel, ist ein gültiges UFT-8 Zeichen und wird im OSD auch korrekt angezeigt. Warum muss das also überhaupt gewandelt werden?
    Ich schätze, wenn du das raus bekommst, hast du das Problem gelöst.

  • Zitat

    Sind die Character so schon in den Input Daten, Welches encoding haben die INPUT Daten ? Würd mich freuen wenn du mir mal so eine problematische Datei per Mail schicken würdest.


    Zitat

    gern, bitte deine Mail per pm


    Häng die hier doch an, dann hab ich auch was zum Spielen :)

  • Hi Mark,


    soll ich dir mal zwei Dateien schicken die ich nicht verarbeiten kann?


    Es könnte natürlich auch sein das nur nicht UTF-8 Systeme, wie zum Beispiel meins, so rumzicken?


    Grüße Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



    Einmal editiert, zuletzt von CKone ()

  • Hier, für euren Spieltrieb ;)


    Diese hier hab ich ums verrecken nicht in meinen VDR eingelesen bekommen.



    Christian

    Dateien

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Hm, 20090217_010.xml kann ich mit

    Code
    iconv -f ISO-8859-1 -t UTF8 ./20090217_010.xml > test.xml


    umwandeln. iconv gibt eigentlich eine Fehlermeldung, wenn Zeichen nicht kodiert werden können.
    Das angegebene 'encoding' scheint also zu passen.


    Zitat

    Es könnte natürlich auch sein das nur nicht UTF-8 Systeme, wie zum Beispiel meins, so rumzicken?


    Code
    marc@siduxbox:~$ echo "ÄÖÜ äöüß †" | iconv -f UTF8 -t ISO-8859-1
    ýýý ýýýý iconv: ungültige Eingabe-Sequenz an der Stelle 16


    Totenkreuz geht also auf ISO-8859-1 Systemen nicht. Da stellt sich mir die Frage, wie tvmovie das dann in eine mit ISO-8859-1 kodierte xml Datei bekommen??

  • Naja das ist genau was ich vermutet habe. Die haben Unicode Chars in nem File was Unicode garnicht unterstützt. Ich wollte versuchen was passiert wenn man UTF8 forced und dann die fraglichen Chars per str:replace ersetzt, bzw ob xsltproc die beim Ausgeben nach ISO-8859-1 schon mit irgendwas ersetzt. Wenn das nichts hilft muss das Suchen&ersetzen vor oder nach dem Parsen passieren

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • Zitat

    Original von steffen_b
    Naja das ist genau was ich vermutet habe. Die haben Unicode Chars in nem File was Unicode garnicht unterstützt. Ich wollte versuchen was passiert wenn man UTF8 forced und dann die fraglichen Chars per str:replace ersetzt, bzw ob xsltproc die beim Ausgeben nach ISO-8859-1 schon mit irgendwas ersetzt. Wenn das nichts hilft muss das Suchen&ersetzen vor oder nach dem Parsen passieren


    das wär echt super wenn du dir das anschauen könntest. Verdirbt aktuell etwas den Spaß...


    Danke schonmal,
    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Hmm ich kann das Problem nicht nachstellen. Zumindest nicht wenn ich Input Encoding auf 8859-1 stelle. Vorher steigt er ja beim ersten ü aus. Was genau kommt denn fürn Fehler oder wo genau ist denn solch ein komischer Char ?

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • Die beiden Dateien kann ich mit

    Code
    xsltproc tvm2vdr_tvmovie.xsl /home/marc/20090216_010.xml.gz

    anzeigen.


    Das Plugin habe ich jetzt auch installiert und mir wird beim einlesen der Daten kein Fehler ausgegeben.

    >>>> x-vdr <<<< Installations-Skript für einen VDR mit Debian als Basis

    Einmal editiert, zuletzt von zulu ()

Jetzt mitmachen!

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