Don't understand german? Read or subscribe to my english-only feed.

Und nun lassen wir einmal unseren Rechner zu Wort kommen…

Als Opera 8 veröffentlicht wurde habe ich einmal einen Streifzug durch dessen Changelog gemacht und dabei das Voice-Feature entdeckt. Indem man das Voice-Plugin nachinstalliert, Text markiert und dann via Menü oder direkt via Tastendruck ‘V’ die Voice-Funktion aktiviert bekommt man eine Computerstimme zu hören, die den ausgewählten Text vorliest. Das funktioniert nur für englischen Text wirklich brauchbar, dann aber dafür richtig nett.

Bei grml gibt es ja das Skript ‘say’. Dieses Skript ruft flite bzw. festival auf um übergebene Argumente als Computerstimme auszugeben. Ich wollte jetzt noch einen Schritt weitergehen: Text der im X-System markiert ist soll auf Wunsch, Window-Manager- und applikationsunabhängig(!) als Sound ausgegeben werden können.

Wie es ablaufen sollte war mir schon klar. Was mir noch fehlte war eine Applikation, welche die X-Selection ausliest und mir auf stdout liefert. Prädestiniert für das Schreiben einer solchen Applikation wäre Anselm R. Garbe – der Autor von u.a. WMI und dessen Nachfolger WMII – gewesen. Eine kurze Anfrage bei Anselm hat ergeben dass es eine solche Applikation bereits gibt – wmiplumb, ein Bestandteil von WMII. :-)

Und so schaut meine Konfiguration nun aus:

% cat ~/bin/xsay
#!/bin/sh
flite -o play -t "$(wmiplumb)"

Und in WMI hab ich das noch auf einen Shortcut gebunden:

% tail -2 ~/.wmi/actions.conf
  extern.xsay.cmd=/home/mika/bin/xsay
  extern.xsay.keys=ctrl+mod1+v

xsay funktioniert somit unabhängig vom verwendeten Window-Manager (wmiplumb im $PATH vorausgesetzt). Man sollte es sich halt auf einen Shortcut in $WM binden um es komfortabel nutzen zu können.

KDE-User können flite übrigens auch direkt via DCOP einbinden:

% flite -o play -t "$(dcop kicker klipper getClipboardContents)"

Ach ja, die Kombination emacspeak und eflite sollte man auch einmal live gesehen haben. :-)

One Response to “Und nun lassen wir einmal unseren Rechner zu Wort kommen…”

  1. nion Says:

    Einfach nur geil!