[ANNOUNCE] UTF-8 patch 0.1.0 mit Freetype und Antialiasing

  • Hallo an alle!


    Neue Version ist jetzt fertig.


    ==Changelog==
    v-0.1.1 (beta 4)
    * Beseitigung OSD Fehler für FF Karten
    * Beseitigung der Text-Rendering Fehler
    * Kleine BUG fixes


    v.0.1.0 für vdr 1.3.37


    * Antialiasing-Unterstützung (experimentell, getestet mit Softdevice)
    * Beseitigung der Text-Rendering Fehler
    * Beseitigung der Kerning Fehler



    http://www.vdr-wiki.de/wiki/index.php/Utf8-patch
    http://www.free-x.de/utf8

  • Hi!


    Kann man nach einspielen dieses Patches auch ohne weiteres das iocharset der Festplatte auf UTF8 einstellen?


    Cheers


    mic


    Edit: Sorry, hab mir den Patch nochmal genauer angesehen und einen Teil meiner Frage zurückgezogen.

  • Hi,


    das hört sich ja super an!
    Ich habe jedoch noch folgende Frage zur Installation: Aus der Wiki

    Code
    Installation
    
    
        * patch anlegen
        * benötigte fonts in standard video Verzeichnis kopieren. 
    
    
    courbd.ttf, arialbd.ttf und arial.ttf werden standardmäßig benötigt.


    Ist damit in jedem Fall das /video Verzeichnis oder das config-Verzeichnis (bei mir /etc/vdr) gemeint.


    Gruß
    Boris

  • Bringt der Patch auch Vorteile auf nem TV oder "nur" in Zusammenhang mit der Ausgabe auf nem Monitor?


    LG
    Roman

    Wohnzimmer (Client 1): C't Vdr (Sarge), 2.6.15-sl, 1.4.0-2, TT-1.5 FF, Hermes 651, 40 GB, 2Ghz Celeron, 512MB, PSOne TFT
    Server: C't VDR (Sid), 2.6.15-1-k7, 1.4.1-1, TT-1.6 FF, XP-2000+, 500GB, 512MB
    Schlafzimmer (Client 2): MediaMVP
    MediaMVP, Bose S 100, 400er Oldischlepptopp für den Garten

  • to Eichbaum:
    damit config Verzeichnis gemeint.


    to Uatschitchun:
    der patch bringt:


    1. Möglichkeit mehr als 256 Zeichen gleinzeitig zu zeigen (mehrere Sprachen und sprache spezifischen Glyphs).
    2. Schöne Fonts, die Größe kann man selbst variieren.
    3. Falls die Ausgabe über softdevice und ein Monitor stattfindet kann man Antialiasing genießen.
    4. Locale auf UTF8 zurückstellen und alle Dateinamen in UTF8 abspeichern (sehr praktisch z.B. mit mplayer/mp3 plugin). Und so weiter.
    5. ...


    to micmac:
    >>Kann man nach einspielen dieses Patches auch ohne weiteres das iocharset der Festplatte auf UTF8 einstellen?
    Ja, wird empfohlen. :)

  • Cooler Patch, welche Chancen wird er wohl bei Klaus haben?


    Hallo erstmal,


    ich wollte diesen Patch schon seit längerer Zeit ausprobieren, da ich ja auch früher wegen der fehlenden Möglichkeit, verschiedensprachige Texte gleichzeitig im OSD des VDR anzuzeigen, in der Mailinglist 'rumgemeckert hatte. Immer hat bei mir aber wenn ich mich daran erinnerte, entweder die aktuell eingesetzte VDR-Version nicht gepasst, oder ich hatte einfach keine Zeit (geht mir momentan fast auch so mit der Zeit).
    Nun, ich habe gestern abend trotzdem nachdem ich es von zzam erfuhr, mir das in den Screenshots im Wiki und im Code des Patches mal ein wenig angeschaut, ich muß nur sagen, feine Sache! Momentan benutze ich sogar den vdr-1.3.37, ich könnte den Patch auch probieren und genießen, nur gibt es da ein kleines Problem. Ich arbeite an einem Patch, der auch an den Phrases in i18n.c und generell in dieser Datei 'rummacht, und meiner ist auch schon lauffähig (bis auf die Plugins) :-). Es gehrt um die Auslagerung der Phrases in externe Sprachdateien, mittels gettext und PO/MO-Dateien.
    Es wäre doch einfach nur wünschenswert, daß wir diese beiden Patches koordinieren, so daß sie "gut miteinander können", oder daß wir sogar die beiden Features zusammen entwickeln. Ich hatte vor etwa einem Monat eine Diskussion in der ofiziellen ML gehabt, Klaus ist natürlich momentan nicht gewillt, sowas anzunehmen. Was weißt Du denn, wie steht's um UTF-8 und Freetype2, was für Chancen gibt's dafür?
    Separat kann man die Patches natürlich benutzen, aber ich fände es eigentlich schade. Wir haben aber, glaube ich, ein großes Problem, wenn wir sie separat entwickeln (und das wird sich wohl 'ne Weile, zumindestens bis nach dem Weihnachtsurlaub nicht ändern können), nämlich immer wenn jemand beide anwenden will, muß erstmal vieles angepasst werden.
    Was meinst Du zur ganzen Sache? Kannst Du Dir vorstellen, wir würden unsere beiden Patches in den nächsten Wochen (bei mir nur ab 2. Hälfte Januar) irgendwie koordinieren, so daß man sie dennoch beide benutzen kann (problem wie gesagt, beide verändern Sachen in i18n.c[h]), oder wir sehen sogar daß wir sie unter einem Hut bekommen, und somit Klaus ein rundes, durchdachtes Konzept präsentieren? In meinem Patch z.B. wandern die ganzen Phrases 'raus aus dem Code und werden über gettext (aber auch eine caching-version ist geplant) aus den externen Lokalisierungsdateien geladen, je nach Einstellung der Locale, die ich ja auch VDR-interne beim Sprachenwechsel verändere). Somit könnte man die nun externen Texte schon in UTF-8 vorliegen haben, dann würde das Konvertieren durch Deinen Patch nicht mehr notwendig sein, usw. Außerdem hat man so auch die Möglichkeit, nur die benötigten Likalisierungen zu installierren, und mein Patch trennt auch die Anzahl der OSD-Lokalisierung von der Anzahl der Content-Sprachen. Einen kleinen Teil meins Patches, nämlich die EEinstellung der Sprache nicht merhr als Zahl, sondern als string in setup.conf zu speichern, hat Klaus für einen 1.4er Version akzeptiert, alles andere hängt vielleicht auch davon ab, wie bequem es sich auf wirklichen UTF-8-Systemen benutzen lässt, oder keine Ahnung, wie man Klaus dazu bringen könnte, solche Sachen anzunehmen. Wie gesagt, wir müssen dann beide unseren Code gegenseitig reviewen und dann aushecken, wie wir's am Besten machen würden. Na, was meinst Du?


    Schönen Gruß,
    Lucian

  • In Version 1.5.x werde ich wohl oder übel UTF-8 akzeptieren müssen, und auch das mit den Texten in *.po Dateien wird wohl sinnvoll sein.


    Aber eines ist absolute, 100%-ige Voraussetzung: es muß möglich sein, eine VDR-Version _komplett_ UTF-8-frei zu erzeugen - und damit meine ich, daß das gesamte UTF-8 Gedöns per "#ifdef USE_UFT8" (Name ist nur ein Beispiel) geklammert sein muß und es somit eine Version ohne jegliche UTF-8 "Verschmutzung" geben kann. Ich möchte nämlich auf meinen Systemen nicht die geringste Spur von UFT-8 haben.


    Klaus

  • Danke trantor,


    dann werd ich wohl auf UTF-8 umstellen können 8)

    Zitat

    Cooler Patch, welche Chancen wird er wohl bei Klaus haben?

    Das ist ne gute Frage 8)


    Viele Grüße
    Boris


    [EDIT ON]
    Ups - da war Klaus schneller :]
    [EDIT OFF]

  • Zitat

    Original von kls
    In Version 1.5.x werde ich wohl oder übel UTF-8 akzeptieren müssen, und auch das mit den Texten in *.po Dateien wird wohl sinnvoll sein.


    Aber eines ist absolute, 100%-ige Voraussetzung: es muß möglich sein, eine VDR-Version _komplett_ UTF-8-frei zu erzeugen - und damit meine ich, daß das gesamte UTF-8 Gedöns per "#ifdef USE_UFT8" (Name ist nur ein Beispiel) geklammert sein muß und es somit eine Version ohne jegliche UTF-8 "Verschmutzung" geben kann. Ich möchte nämlich auf meinen Systemen nicht die geringste Spur von UFT-8 haben.


    Klaus


    Hallo Klaus


    das alles klingt ja gar nicht mal so schlecht.
    Müsste eigentlich auch so elegant machbar sein, daß diese *.po Dateien ohne UTF-8 sondern in den jeweiligen character sets so wie bisher gespeichert und gehandhabt werden, und bloß wenn UTF8 #defined ist, die Texte so wie derzeit in trantor's Patch konvertiert werden. Sinnvoll wäre es dann aber,glaube ich, nicht mehr die pure gettext-Variante wie es derzeit auf meinem VDR läuft, zu verwenden, sondern die installierten *.po Dateien (die ja bei der Installation ausgewähhlt, oder nachträglich hinzugefügt werden können, also die Anzahl der Sprachen ist bei mir nun dynamisch) beim Starten von VDR schon geparst, geladen und wenn UTF8, konvertiert werden, und nicht mehr über gettext eigentlich die *.mo Dateien bei jedem Aufruf von Translate angefasst werden.


    Nun, ich denke es wäre sinnvoll, trantor und ich machen da zusammen etwas, weil wir ja beide schon funktionierenden Code haben. Zeit scheint ja noch bis 1.5 zu sein, ;) oder?


    Schönen Gruß,
    Lucian

  • Zitat

    Original von Zoolook
    das alles klingt ja gar nicht mal so schlecht.
    Müsste eigentlich auch so elegant machbar sein, daß diese *.po Dateien ohne UTF-8 sondern in den jeweiligen character sets so wie bisher gespeichert und gehandhabt werden, und bloß wenn UTF8 #defined ist, die Texte so wie derzeit in trantor's Patch konvertiert werden.


    Die *.po-Dateien können meinetwegen machen, was sie wollen. Ich selber brauche nur die englische Variante (die ja eh' im Code drinsteckt und kein UTF-8 braucht) und die deutsche (die natürlich ISO8859 sein wird). Alles andere ist mir egal.


    Zitat


    Sinnvoll wäre es dann aber,glaube ich, nicht mehr die pure gettext-Variante wie es derzeit auf meinem VDR läuft, zu verwenden, sondern die installierten *.po Dateien (die ja bei der Installation ausgewähhlt, oder nachträglich hinzugefügt werden können, also die Anzahl der Sprachen ist bei mir nun dynamisch) beim Starten von VDR schon geparst, geladen und wenn UTF8, konvertiert werden, und nicht mehr über gettext eigentlich die *.mo Dateien bei jedem Aufruf von Translate angefasst werden.


    Ich habe mich bisher mit den Einzelheiten, wie das am sinnvollsten zu machen ist, noch überhaupt nicht befaßt, und werde das vor der 1.5.x auch nicht tun ;)


    Zitat


    Nun, ich denke es wäre sinnvoll, trantor und ich machen da zusammen etwas, weil wir ja beide schon funktionierenden Code haben. Zeit scheint ja noch bis 1.5 zu sein, ;) oder?


    Ich hoffe, das meiste, was ich noch für die 1.4 erledigen möchte, über Weihnachten machen zu können...


    Klaus

  • Zitat

    Original von kls
    Ich hoffe, das meiste, was ich noch für die 1.4 erledigen möchte, über Weihnachten machen zu können...


    Da scheint sich ja ein super Rutsch ins neue Jahr anzubahnen.... :D


    Viele Grüße
    Boris

  • Hi!


    to kls:
    Sehr konservativ.


    UTF8 ist so wie so 8 bittig und uberlappt sich nicht mit ASCII7, ich denke intern wäre möglich alles auf WCHAR zu portieren für immer, und welche Kodierung du letzendlich nutzen willst ist danach egal.



    to Eichbaum:
    UTF-8 patch braucht von i18n nur strings in utf8 oder auch z.B. utf-16 falls alle interne Strukturen werden auf wchar umgestellt. Wäre sehr klever. Bei meinem patch ist die konvertierung nur eine Notlösung um an unicode strings zu kommen.
    mich interresiert eigentlich andere Sache: was willst du mit allen ~140 patches machen ? alle patchen?

  • Hi,


    ich hab den Patch mal eingespielt. Leider stürtzt vdr dann nach ein paar Sekunden ab. Ich hab mal gdb installiert und benutzt. Hier ist der Output:



    So siehts aus wenn ich vdr ohne gdb starte:

    Code
    vdr@section_eight /usr/local/src/VDR $ ./vdr -L /usr/local/src/VDR/PLUGINS/lib/ -c /usr/local/vdr/etc/ -v /data/vdr/  -s /usr/local/bin/vdrshutdown
    Speicherzugriffsfehler


    vdr ist nur mit deinem UTF-8 gepatcht. Meine Make.config sieht so aus:

    Code
    INCLUDES += -I/usr/include/freetype2
    CXXFLAGS += -fPIC
    
    
    NO_KBD=1
    REMOTE=LIRC


    Kannst Du damit was anfangen?

  • Hi Trantor,

    Zitat

    Original von trantor
    to Eichbaum:
    UTF-8 patch braucht von i18n nur strings in utf8 oder auch z.B. utf-16 falls alle interne Strukturen werden auf wchar umgestellt. Wäre sehr klever. Bei meinem patch ist die konvertierung nur eine Notlösung um an unicode strings zu kommen.
    mich interresiert eigentlich andere Sache: was willst du mit allen ~140 patches machen ? alle patchen?


    *grübel*
    Ich glaub da hast Du mich verwechselt...


    Gruß
    Boris

  • Zitat

    Original von trantor
    hast du was in syslog?
    fonts installiert?


    Jupps :) Fonts sind da (in /usr/local/vdr/etc).



    Anscheinend nichts auffälliges. Die channels.conf hatte ich schon per iconv nach utf8 konvertiert.

  • Das gleiche hatte ich auch. Da ich allerdings zig Patches eingespielt habe, konnte ich noch nicht testen, woran es liegt. Allerdings ist mir aufgefallen, dass nach Einspielen des Patches kein OSD zu sehen war, bevor sich vdr mit einem Speicherfehler verabschiedete. Es war aber schon der Channel gelockt.

    Dr. Brömme grübelt:
    Acht Wochen, nachdem man ihm beim Kölner Straßenkarneval einen Gratiskorn angeboten hatte,
    dämmert ihm langsam, dass er einem hinterlistigen Alaafisten aufgesessen ist.

Jetzt mitmachen!

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