Re: [orca-list] plugging other language voices



Willie Walker wrote:
  Theoretically, an assistive technology can talk to
  multiple speakers from multiple drivers, with the main
limitation being audio device contention between multiple speech synthesis engines.

Yes, this is a very low level access from the AT's point of view, but as long as it is implemented within the Gnome Speech layer I don't think this really matters for Orca itself, since the language (locale) information is already exposed to the Orca Speech API. I am able to make use of the locale information immediately in the Speech Dispatcher backend, since Speech Dispatcher takes care of all the lower level details of language switching for us (for example it is possible to use different synthesizers for different languages).

So I can see two *independent* problems in making Orca multi-lingual:

  1) Providing the correct locale information in all text being spoken
     by Orca using the existing 'locale' ACSS attribute.

  2) Implementing language switching according to this information in
     different speech systems.  This is about a one minute job for
     Speech Dispatcher.   With Gnome Speech this is a little more work,
     but still doable, I believe.

The advantage is the independence of these two problems, so I believe we can start experimenting right now. I can add this functionality to the Speech Dispatcher backend as soon as the locale information within the ACSS attributes provides some reasonable values. Currently I prefer to ignore this information, since it always contains 'english', but it makes sense to switch the default language according to current locale (most of the text produced by Orca is in the current locale's language).

So if Orca sets the locale information to the current locale by default and changes it for any part of speech to a different language, Speech Dispatcher will respect that. This way Orca could for example set the locale according to the locale of the current application being accessed or of a web page being viewed.

Hope this makes sense.  Tomas






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]