Electronics and Software
Engineering Innovation

The BEAM XVI-SB Screen Reader Software

Introduction

The BEAM XVI-SB screen reader application is responsible for providing the user with a "view" of the computers display by use of a speech and/or braille display unit. The screen reader builds up a model of the on screen display and allows the user to interrogate this model to determine the screens contents. A number of features are provided to ease usage of the system. The screen reader has been designed so that the user views and operates the application in a similar manner to sighted users. This aids training on the system and allows sighted people to work with or assist blind or visually impaired people easily.

The Screen Model

The XVISB screen reader generates and updates an internal model of the screens contents. The model consists of a hierarchy of information on each applications on screen windows. Information such as position, stacking order and any text written into the window is kept.

User Navigation

In general the screen reader application is designed to follow the applications normal operation. It will track the applications object that has the keyboard focus automatically and in most cases the user operates the application by means of the standard applications key presses. However, sometimes more control is required. Some applications are designed to be operated with a mouse and the keyboard interface is poor or non existent. Also the user may wish to look around the displayed window for additional information or functions that are not apparent when the application is driven by a keyboard.

The XVISB screen reader provides the user with the means to navigate through the information contained within the real time model by means of special key presses and keys on the braille display. The system has the concept of a current application window and a current object within the application. The applications top level windows are considered as a sequential list and the user can move the center of attention from one to the next by means of simple key stokes. Each applications top level window is considered to contain a number of objects laid out in a the dimensional plan. These objects are things such as buttons, labels, lists text fields etc. The user is able, by means of the numeric keypad and braille display keys, to move around the windows objects and read their contents. The mouse cursor is moved around over the objects of interest so that mouse buttons can be pressed in the conventional way (the numeric keypad has three keys that operate the mouse buttons).

Application Windows

All of the running applications top level windows are considered as a sequential list and the user can move the screen readers center of attention from one to the next by means of simple key stokes. This automatically de-iconifies the window, if necessary, and moves the window to the front of all other windows on the display.

Object Navigation

Each applications top level window is considered to be a number of objects laid out in lines from top to bottom. The screen reader provides the ability to move left, right, up and down through these objects when in object mode. The numeric keypad and the main braille display keys are used for this purpose. Once on an object the objects contents and information on the object is displayed on the braille display and spoken through the speech unit. If the object contains many lines of text, the user can navigate through the text in text mode.

Text Navigation

When an object contains many lines of text, such as a multi-line address field, the user can switch the system to text mode to navigate. Once in text mode the user can navigate left, right, up and down through lines, words and individual characters of the text. The numeric keypad and the main braille display keys are used for this purpose. This is especially useful when editing text or using applications that use a conventional text only 80x24 display.

Mouse Operation

Whenever the screen readers center of attention is moved, either by user navigation or tracking an applications focus change, the mouse cursor is moved over the object of interest. This enables the user to press the mouse buttons to operate the object if necessary. The mouse buttons can be driven from the numeric keypad or the braille displays keys.

System Information

Information on various aspects of the screens display and individual object are provided. The system will provide spoken information when important aspects of the screens display changes such as a window popping up or disappearing. The system will also provide information on the current application window and the current object.
As well as speech output the braille used can move back an forward through the list of information messages.

Speech Interface

The speech interface has been designed to provide a simple system that can provide the user with information on the on screen displayed data as well as general information on the display and what is going on. The system employs three voices. One is used to speck out the on screen data another is used for information on the displayed objects or screen activity such as windows popping up and the final one is used to speck out user key presses to aid keyboard feedback. As well as speaking out the on screen data, the system attempts to provide more information about the object whose data is being accessed. Labels and object types can be associated with the objects and, if available, this would be spoken out using the information voice. For example, when over a text field containing a name the following could be spoken: "Name text field, Terry". This aids screen navigation giving the user automatic feedback on where they are.
The user can change the voice used, the speed of the speech and the loudness. Numbers can be spoken as the individual digits or spoken as whole numbers. The system attempts to understand telephone numbers, money and dates.

Braille Interface

The braille display interface has been designed to provide the user with both on screen data and information as well as a convenient set of keys for navigating the display. The braille display provides three status cells and 40 or more data display cells. The first status cell gives status on the operational mode of the system. The second cell provides information on the current objects type and if it has keyboard focus. The third status cell provides a line number which aids on screen navigation. As well as displaying the on screen data within the data cells, the system attempts to provide more information about the object whose data is being accessed. A Label can be associated with each on screen object and, if available, this would be displayed before the on screen data. For example, when over a text field containing a name the following could be displayed: "Name Terry". This aids screen navigation giving the user automatic feedback on where they are. The text cursor is displayed by raising the lower two pins of the appropriate status cell.
The braille front keys are used for screen navigation allowing the user to move up, down, left and right both objects and text. The status cell buttons provide additional features such as moving the on screen mouse cursor over a particular character, moving between application windows, pressing the mouse buttons and running simple macro commands.

Locator Keys

In order to assist screen navigation, the user can set up locator keys for each application window. Once set to a particular on screen object, the user has only to press the appropriate locator hot key to move the mouse cursor and screen readers center of attention to that object. This cane speed up operation of commonly used windows enormously.

Graphics

The system provides the ability to name graphical icons on the display. If not named these icons will be given a unique numeric name.

User Options

The system provides a number of user options to tailor the system to users particular needs. All of these can be accessed via hot keys. Options are provided to control the speech display, the braille display and general screen reader functions.

System Help

All of the system documentation is available on line and can be read with the help viewer. In addition there is an interactive keyboard help mode that provides assistance in learning what each key and key sequence on the keyboard does.

Application Information System

To aid the users navigation and understanding of the on screen objects, the system provides an application information system. This allows a file to be created for each application listing the on screen objects and information such as object types and labels as well a generic information. BEAM provide a tool called the XVISB Appinfo application that enables system administrators or trainers set up this information.

Display Devices

screen reader software is designed to work with both speech and braille displays. Currently the only supported units are the Dolphin Apollo 2 speech unit and the Alva Delphi 440 braille-speach unit.

Supported Applications

Due to the huge variety of applications and GUI tool kits in use with the X-Window system, not all applications are supported. Also some applications are inherently graphical driven, such as CAD tools, and would not be able to be used with this screen reader. Please contact BEAM with the applications you wish to use.