Tuesday, November 08, 2005

Gnopernicus

As part of my research about the feasibility of QTpedia I checked what Wikipedia has to say about Gnopernicus, and found the following:

Gnopernicus is a free GNOME desktop application that
provides Assistive
Technologies
(AT) for blind and visually impaired
users.
SRCore is the component of Gnopernicus screen reader, that
gathers information from all input sources, organize it and then presents it to
the three outputs: Braille, Speech, Magnifier.


Then there was a link to Gnopernicus homepage with very detailed information about what Gnopernicus is and how to use it. There was even a FAQ section. It seemed that it will be impossible to add to that great and complete info but still QTSaver had to add the following:

http://packages.debian.org/unstable/x11/gnopernicus.html
[ Warning: Gnopernicus is still experimental; there is no official release yet.
http://www.nfbnet.org/pipermail/nfb-talk/2003-April/002009.html
Thomas then briefly showed on his slides the complete default configuration of the keyboard interface - all of the commands on each layer of the keypad. Finally, Thomas gave a brief report on the state of the project and the plans going forward. As of February 20th, Gnopernicus is "feature complete", and BAUM is now in the "application testing phase".
http://wearables.blu.org/wear-hard-03/20039440.txt
Peter then launched the Gnopernicus screen reader/magnifier, and showed how Gnopernicus tracks the user focus and reads the item the user is interacting with as well as pertinent information about it (e.g. telling the user that they have activated a menu, the name of that menu, and the number of items in that menu).
Peter noted that while neither Gnopernicus nor GOK were shipping yet, Sun planned to being a beta testing program in the near future, and is soliciting volunteers who would be interested in beta testing the accessibility GNOME desktop with Gnopernicus and GOK.
Peter then launched the Gnopernicus screen reader, and showed how Mozilla supports the GNOME accessibility architecture, through which Gnopernicus is able to provide blind and low vision access to web browsing in UNIX environments. Peter used Gnopernicus to track keyboard interaction with the Mozilla user interface (reading menus and dialog boxes), and then opened the CSUN conference web page and used Gnopernicus to read the information on that web site. Peter explained that HTML accessibility information as detailed by the Web Accessibility Initiative is being exposed through the GNOME Accessibility Framework, making it available to screen access technologies such as Gnopernicus.
Peter Korn of Sun Microsystems briefly introduced the session, and then introduced Thomas Friehoff - the Vice President of R&D at BAUM Retec A. G. and the person in charge of Gnopernicus screen reader/mangifier development. Thomas gave an overview of his talk: that he would describe BAUM's motivation for doing Gnopernicus; talk about the architecture and targeted platforms of Gnopernicus; show the user interface design of Gnopernicus; and talk about BAUM's development plans going forward. Thomas described the core Gnopernicus development team: 4 engineers working in Romania full time for the last 18 months .
Furthermore, there is a standard way for new and potentially novel applications to support the accessibility interfaces, so Gnopernicus need not be modified in order to provide access to them.
Thomas noted that the architecture of Gnopernicus is different from that of other screen readers - the core of the product contains no user interface code; rather that code lives in a separate series of modules (for speech, magnification, and Braille), making it very straightforward to build different products for other user needs (for example for people with learning disabilities or the elderly). Thomas described the two parts of the Gnopernicus user interface: the series of configuration dialog boxes (for output devices, for keyboard key assignment, and to load and save settings); and the direct keyboard access interface to the functions of Gnopernicus (using the numeric keypad, through the use of the standard keyboard keys with special modifiers a user might define, and through the buttons of an attached Braille display).
One of the graphical configuration dialogs Thomas talked about was for magnification settings: Gnopernicus supports a range of magnification features including separate mouse cursor magnification, differential (x,y) coordinate magnification up to 16x, full-screen crosshairs (in a user-selectable color), a variety of picture smoothing options, several mouse tracking options, panning and inversion options, and a number of "zoom" regions so that the user can have one portion of their screen dedicated to magnifying one source while other portions of their screen are magnifying other sources. Thomas also noted that all of these specific settings can be invoked directly from the direct keyboard interface commands.
Options Thomas highlighted included the a choice of Braille devices connected to the serial ports (currently the BAUM Vario and ALVA lines of displays are supported), a choice of Braille translation table (currently English, German, Spanish, and Swedish are supported), and a choice of action to be taken when one of up to two rows of touch cursors is selected (including mouse movement/click/double-click, moving the text caret, and presenting various sorts of information about the object/character at that Braille cell). Thomas also demonstrated how a user can map specific commands to various other buttons on a Braille display. Thomas then showed how the Gnopernicus direct keyboard interface can be configured - where each command can be mapped to various keys on the numeric keypad, or to user-defined key combinations. Gnopernicus uses the concept of "layered" keypads which a user can toggle between, thereby making a much larger set of keys available for the direct keyboard interface, and grouping related commands onto the same layer (e.g. all magnification commands on one layer) for more logical use. The user can choose a specific named command and map it to a particular key on a particular layer on the numeric keypad. Thomas talked about Gnopernicus' flexible presentation of information.
Thomas also noted that these named "Gnopernicus voices" are completely configurable by the user, who can collect a particular set of speech parameters for a particular text-to-speech engine together into a named "Gnopernicus voice" (such as "accelerator"), and then have Gnopernicus use that voice for presenting specific things in the user interface, in response to specific events on the desktop. Running out of time, Thomas skipped over many of his slides, only briefly mentioning the Gnopernicus Find command (which allows a user to search not only for text, but named graphics, as well as for attribute runs such as "find the next bit of italicized text", or "find the next bit of underlined text that is selected").
http://mielke.cc/brltty/doc/Gnopernicus.txt
You need to ensure that the braille-related accessibility features of Gnome are set correctly, i.e. that Accessibility is enabled, that Braille Support is enabled, and that the Braille Device is set to "BRLTTY". Gnopernicus, at start time, automatically checks these settings, and, for each feature which isn't enabled, displays a dialogue which asks the user if it should be. Since a blind user can't see these dialogues, and, therefore, may experience what he believes to be an unexpected hang when starting Gnopernicus, other means have been provided so that he can ensure that they're correct ahead of time. They may be preconfigured via Gnopernicus command-line options, via the generic Gnome command-line configuration tool, or, if sighted assistance is available, from the Gnome desktop.
This driver assumes that Gnopernicus key bindings remain at their default settings. Changing Gnopernicus's key bindings may interfere with the user's ability to accurately and/or predictably control window navigation when using BRLTTY.
http://blogs.sun.com/roller/page/korn/20050721
Now all we need to do is figure out exactly how to best make use of it to support magnification! We also used the time in Germany to hook up with a number of blind and low vision users/testers, and helped them configure their systems to use Gnopernicus. After seeing experimental magnification with XFIXES and DAMAGE, one low vision Gnopernicus user got quite excited, and told us he was looking forward to retiring his Windows screen magnifier to move full time to GNU/Linux.

No comments: