[Kde-accessibility] Proklam and KMouth

Olaf Jan Schmidt olaf@amen-online.de
Sun, 22 Sep 2002 17:28:58 +0200


Hello!

As Gunnar's twin brother, I am also a part of the KMouth project. I am a=20
very bad programmer, for I decided to study theology rather than=20
informatics, so I am mainly contributing artwork, documentation and=20
translation.

I used to do much programming when I was a youth, so I am interested in=20
understanding and discussing the proklam architecture, in case I should=20
find the time again to contribute small pieces to my brother's code.

I could also do the German translation for Proklam once the project is=20
matured and do a lot of beta testing, of course.

> Pupeno wrote:
> > An intresting project, something like what Stephen Hawking uses
> > except that Hawking case is more challenger as he has only three
> > movable fingers to control the system.

Stephen Hawking suffers from exactly the same illness as our mother. Ther=
e=20
will be a point of time when she will also not be able to move more than=20
three fingers, but we can alwaly do changes to the program once we see=20
what exactly is needed and practical.

> > If Festival was working, Proklam would be already speaking,=20

I also have great problems installing the German version of Festival, but=
=20
I managed to install the English version quite easily. What are your=20
problems exactly?

> > but I don't have any problem in making a complete redising I would be
> > very glad to redisign it with you so it would achive your needs.

That's good news, but I hope a complete redesign is not necessary.

Which kinds of DCOP messages do currently exist?

Gunnar wrote:
> Well, I think what I need is basically the possibility that KMouth can
> select the language that is used for pronounciation. For the actual
> implementation the easiest way might be to extend Proklam to be able to
> use multiple configurations at a time. The calling program can specify
> which of the configured configurations it wants to use. Off course we
> need to have a default configuration for when a program does not want
> to specify the configuration.

I see a number of ways for allowing Proklam to speak in different=20
languages. All of them have advantages and disadvantages, so I will=20
shortly describe all of them.

1st idea: A mechanism to let a plug-in know which exactly the prefered=20
language is.

This could be done by sending a DCOP message which specifies a parameter=20
(e.g. "language" or "sex") and a value (e.g. "en" for English or=20
"female"). If the plugin does not know the parameter or the value, then=20
the default is used.
There would also have to be a function to ask the modules for possible=20
values to a certain parameter.

Advantage: The change to Proklam would only be the implementation of a=20
function forwarding parameters and values. Proklam itself does not need=20
to deal with the content of the parameters.

Disadvantage: The language can only be switched within one multilingual=20
plugin, it is not possible to use several installed tts systems for=20
different languages.


2nd idea: Allow the user to not only load and configure one Proklam=20
module, but several. Also allow the user to load the same plugin several=20
times. The default configuration would be named "default", and a name for=
=20
all other configurations could be chosen by the user (e.g. "Festival" or=20
"German" or "Male voice").

KMouth would then allow the user to chose between all active=20
configurations.

Advantage: No mechanisms for parameters would be needed.

Disadvantage: It would not be possible to specify the language directly.=20
The user would have to do a lot of configuring in a complicated Kcontrol=20
module.


3rd idea: Allow programs to load a different plugin. Store all possible=20
parameter values per plugin in a file, so programs can ask for which=20
plugin to change to once the language is changed.

Advantage: Flexible for the programs using Proklam, maybe not too many=20
changes in Proklam

Disadvantage: It is not possible to automatically change the language, fo=
r=20
this might interfere with other programs using Proklam. It would need to=20
be a user action to change language (even if outside of the Proklam=20
Kcontrol module).


4th idea: Make it possible to load several plug-ins, and implement a=20
parameter forwarding mechanism. When the program asks for special=20
parameters ("language" =3D "en" and "sex" =3D "female"), then Proklam cal=
ls a=20
parameter function in the default plugin. If the function returns with=20
"false", then the next plugin is tried. If none of the active plugin is=20
found, then the default configuration is used.

Advantage: Flexible for the programs using Proklam

Disadvantage: A lot of changes to Proklam



As I said, I will not be able to implement any of this. These are just my=
=20
ideas as someway who is not really a programmer, I just thought they=20
might be of help.


I will try to install Proklam CVS in the next weeks. Do I also need to=20
install HEAD to let it run?

Olaf.

--=20
My web sites:
http://www.amen-online.org is an Ecumenical project with prayers from fou=
r=20
Millennia.
http://www.GebetGenerator.de is a German computer program generating=20
prayers.