Re: [suse-isdn] raccess4vbox - Fernabfrage von vbox will nicht
Ekkard Gerlach [mailto:suse-isdn@aiai.de]
habe die Prozedur gefunden. Verstehe aber tcl kaum. ... if [ catch { eval exec -- $say $flag -a -o - $string $args $append | \ $vbox_var_bindir/autovbox | cat > $file 2> /dev/null } that ] { raccess_log 1 "ERROR convert text2au2vbox > $file: $that" if { [ string compare $string error ] == 0 } { return "ERROR" } return [ handle_error "cannot convert text to soundfile: $that" ] }
Soweit ich das verstehe (habe auch nur geringste TCL-Kenntnisse!): Hier wird say ($say) mit den Parametern "$flag -a -o", dem zu sprechenden Text in $string und noch ein paar Parametern ($args $append) aufgerufen. Die Ausgabe (sicherlich im AU-Format) wird in $vbox_var_bindir/autovbox gepiped. Autovbox wandelt dann ins vbox-Format und legt den Spruch in der Datei $file ab. Geht dabei irgendetwas schief, kommt der Fehler "ERROR convert text2au2vbox...", den Du ja schon kennst. Beim debuggen ähnlicher Probleme bei meiner vbox-Installation hat mir geholfen, an den entsprechenden Stellen im TCL-Script ein 'raccess_log 1 "Variable: $variable"' einzufügen. Dann kann man in der raccess.log prima mitlesen, was sich gerade in der Variablen befindet. Prüfe damit mal, ob die genutzten Programme (say, autovbox) auch in den entsprechenden Pfaden liegen!
Da ist die Variable vbox_var_bindir ständig genannt und genutzt, in keinem Konfig-File ist sie allerdings erklärt, also ein Wert zugewiesen. Ist das bei tcl irgendwie versteckt ?
Die wird (glaube ich) durch vboxgetty gesetzt. Sieh' mal unter 'man vboxgetty' nach!
Ich habe mbrola installiert. Dort gibt es ein txt2pho, welches diese Umwandlung macht.
Hast Du die standard.tcl (bzw raccess4vbox.tcl) entsprechend angepaßt?
Ja, da war gleich eine angepasste dabei.
(ich habe raccess4vbox.tcl und raccess.conf eben nach /var/spool/vbox/gerlach kopiert )
Ich auch.
* Dann soll von standard.tcl ein Link auf raccess4vbox.tcl (als alles im gleichen Verzeichnis !?)
Ja.
Muß ich da noch vbox_var_bindir deklarieren? Was heißt tuning ?
tuning ist nur ein Konfigurationsabschnitt.
Habe in raccess.conf den debug-level eingeschaltet. In raccess.log erhalte ich aber auch keine genaueren Hinweise auf den Fehler:
Füge mal o.g. raccess_log Befehl ein, dann siehst Du mehr.
ERROR convert text2au2vbox > /tmp/vbox20-[pid].tmp: child process exited abnormally
Das ist der Fehler, den die Routine von oben erzeugt. Steht da wirklich "[pid]", oder steht eine Zahl zwischen den Klammern? Falls "pid", wäre das doch schon ein guter Ansatz zur Fehlersuche... -- Mit freundlichen Grüßen Thomas Voigt
* Voigt Thomas schrieb:
Beim debuggen ähnlicher Probleme bei meiner vbox-Installation hat mir geholfen, an den entsprechenden Stellen im TCL-Script ein 'raccess_log 1 "Variable: $variable"' einzufügen. Dann kann man in der raccess.log prima mitlesen, was sich gerade in der Variablen befindet.
Danke, gemacht: raccess_log 1 "say:$say; flag:$flag; string:$string; args:$args; append:$append;" if [ catch { eval exec -- $say $flag -a -o - $string $args $append | \ $vbox_var_bindir/autovbox | cat > $file 2> /dev/null } that ] { raccess_log 1 "ERROR convert text2au2vbox > $file: $that" ... dann in raccess.log: Play /var/spool/vbox/gerlach/messages/standard.msg GOT SEQUENZ *1910# playtext starting remote access mode say:/usr/bin/say; flag:-q -x 2000 -f 8; string:starting remote access mode; args:; append:,,,,; ERROR convert text2au2vbox > /tmp/vbox20-[pid].tmp: child process exited abnormally /usr/bin/say bekommt als Parameter: -q -x 2000 -f 8 "starting remote access mode" in man say steht SYNOPSIS speak hostname "message" (... was wohl say hostname "message" heißen soll ) heißen. Dann aber passen die Argumente von say gar nicht. Test: gerlach@hanne:/> /usr/bin/say -q -x 2000 -f 8 "Hallo" use: say host "message" Das Format falsch ?!?!? Test2: gerlach@hanne:~ > say localhost "Hallo" say: localhost: speak service unavailable Hmmm ... hanne:/etc # rpm -ql speak-1.0-1 /etc/rc.d/init.d/speak.init /etc/speak.conf /usr/bin/say /usr/bin/speak /usr/man/man1/say.1 /usr/man/man1/speak.1 /usr/man/man7/speak.conf.7 /usr/man/man8/down.8 /usr/man/man8/spo256.8 /usr/man/man8/vmon.8 /usr/sbin/down /usr/sbin/spo256 /usr/sbin/vmon /usr/sbin/vstat man spo256 -> spo256-Server muß noch installiert werden. Habe /etc/speak.conf angepaßt indem ich das serial device /dev/ttyS7 (statt S6) eingesetzt habe, dann: # spo256 und der Server läuft: telnet auf port 800 (gemäß Einttrag in /etc/services) läuft (vorher gings nicht). Jetzt: hanne:/etc # say localhost "hello" ... und nix passiert. KLar, weil es ja an ttyS7 geht. nochmal Testanruf bei mir selber: wieder gleicher Fehler: ERROR convert text2au2vbox > /tmp/vbox20-[pid].tmp: child process exited abnormally .. klar, weil say in dem tcl-Skript mit falschen Parametern aufgerufen wird. Diesmal habe ich während der Ansage und nach Eingabe der *1910# versucht ein "hello" einzuspielen: hanne:/etc # say localhost "hello" .. aber kein Erfolg. Kann mir jetzt jemand sagen, wie ich den spo256 testen kann? Hat überhaupt jemand raccess4vbox mit say von speak-1.0-1 am laufen? - Ich vermute kaum jemand, weil es mit dem Aufruf /usr/bin/say -q -x 2000 -f 8 " text .." ja gar nicht funktionieren kann. Habe mit alsasound meine Soundkarte am laufen. Welches device kann ich bei speak.conf testweise eintragen, damit ich say bzw speak mit spo256 direkt testen kann? Mit /dev/dsp /dev/audio .. habe ich es schon erfolglos getestet. spo256 startet dann erst gar nicht. mbrola kann ich übrigens nicht installieren, weil mein AB auf einem alten 90er Pentium-Notebook läuft und für umbrola zu schwach ist (siehe Mail von Karsten in diesem thread). Thomas, wo und wie hast Du umbrola anstelle von say eingebaut ? thx Ekkard
On Fri, May 24, 2002 at 11:50:06AM +0000, Ekkard Gerlach wrote: ...
Kann mir jetzt jemand sagen, wie ich den spo256 testen kann? Hat überhaupt jemand raccess4vbox mit say von speak-1.0-1 am laufen? -
Das ist glaube ich das falsche tool. rsynth-2.0.tar.gz ist wohl das was das richige say enthaelt ist schon lange her: http://wwwtios.cs.utwente.nl/say/about_say.html I found rsynth as rsynth-2.0.tar.gz at svr-ftp.eng.cam.ac.uk:/pub/comp.speech/synthesis/. -- Karsten Keil SuSE Labs ISDN development
* Karsten Keil schrieb:
On Fri, May 24, 2002 at 11:50:06AM +0000, Ekkard Gerlach wrote: ...
Kann mir jetzt jemand sagen, wie ich den spo256 testen kann? Hat überhaupt jemand raccess4vbox mit say von speak-1.0-1 am laufen? -
Das ist glaube ich das falsche tool. rsynth-2.0.tar.gz ist wohl das was das richige say enthaelt ist schon lange her:
http://wwwtios.cs.utwente.nl/say/about_say.html
I found rsynth as rsynth-2.0.tar.gz at svr-ftp.eng.cam.ac.uk:/pub/comp.speech/synthesis/.
Jau, das ist das richtige. Alles funktioniert auf Anhieb! Super! Bin auch sauer, daß ich mich über 10 Stunden unnötig mit dem speak-1.... beschäftigt habe. Danke Ekkard
participants (3)
-
Ekkard Gerlach
-
Karsten Keil
-
Voigt Thomas