Home      Discussion      Topics      Dictionary      Almanac
Signup       Login
Screen reader

Screen reader

Overview
A screen reader is a software application
Application software
Application software is a computer program that functions and is operated by means of a computer, with the purpose of supporting or improving the software user's work. In other words, it is the subclass of computer software that employs the capabilities of a computer directly and thoroughly to a...

 that attempts to identify and interpret what is being displayed on the screen (or, more accurately, sent to standard output
Standard streams
In Unix and Unix-like operating systems, as well as certain programming language interfaces, the standard streams are preconnected input and output channels between a computer program and its environment when it begins execution...

, whether a video monitor is present or not). This interpretation is then re-presented to the user with text-to-speech, sound icons, or a Braille output device
Refreshable Braille display
A refreshable Braille display or Braille terminal is an electro-mechanical device for displaying Braille characters, usually by means of raising dots through holes in a flat surface. Blind computer users, who cannot use a normal computer monitor, use it to read text output...

. Screen readers are a form of assistive technology
Assistive technology
Assistive technology is a generic term that includes assistive, adaptive, and rehabilitative devices for people with disabilities and includes the process used in selecting, locating, and using them....

 (AT) potentially useful to people who are blind
Blindness
Blindness is the condition of lacking visual perception due to physiological or neurological factors.Various scales have been developed to describe the extent of vision loss and define blindness...

, visually impaired
Visual impairment
Visual impairment or vision impairment is vision loss to such a degree as to qualify as a handicap through a significant limitation of visual capability resulting from either disease, trauma, or congenital or degenerative conditions that cannot be corrected by conventional means, such as...

, illiterate or learning disabled
Learning disability
Learning disability , is a disorder in which a person has a difficulty to learn effectively, caused by an unknown factor or factors. The unknown factor is the disorder that affects the brain's ability to receive and process information...

, often in combination with other AT, such as screen magnifier
Screen magnifier
A screen magnifier is software that interfaces with a computer's graphical output to present enlarged screen content. It is a type of assistive technology suitable for visually impaired people with some functional vision; visually impaired people with little or no functional vision usually use a...

s.

A person's choice of screen reader is dictated by many factors, including platform, cost (even to upgrade a screen reader can cost hundreds of U.S.
Discussion
Ask a question about 'Screen reader'
Start a new discussion about 'Screen reader'
Answer questions from other users
Full Discussion Forum
 
Encyclopedia
A screen reader is a software application
Application software
Application software is a computer program that functions and is operated by means of a computer, with the purpose of supporting or improving the software user's work. In other words, it is the subclass of computer software that employs the capabilities of a computer directly and thoroughly to a...

 that attempts to identify and interpret what is being displayed on the screen (or, more accurately, sent to standard output
Standard streams
In Unix and Unix-like operating systems, as well as certain programming language interfaces, the standard streams are preconnected input and output channels between a computer program and its environment when it begins execution...

, whether a video monitor is present or not). This interpretation is then re-presented to the user with text-to-speech, sound icons, or a Braille output device
Refreshable Braille display
A refreshable Braille display or Braille terminal is an electro-mechanical device for displaying Braille characters, usually by means of raising dots through holes in a flat surface. Blind computer users, who cannot use a normal computer monitor, use it to read text output...

. Screen readers are a form of assistive technology
Assistive technology
Assistive technology is a generic term that includes assistive, adaptive, and rehabilitative devices for people with disabilities and includes the process used in selecting, locating, and using them....

 (AT) potentially useful to people who are blind
Blindness
Blindness is the condition of lacking visual perception due to physiological or neurological factors.Various scales have been developed to describe the extent of vision loss and define blindness...

, visually impaired
Visual impairment
Visual impairment or vision impairment is vision loss to such a degree as to qualify as a handicap through a significant limitation of visual capability resulting from either disease, trauma, or congenital or degenerative conditions that cannot be corrected by conventional means, such as...

, illiterate or learning disabled
Learning disability
Learning disability , is a disorder in which a person has a difficulty to learn effectively, caused by an unknown factor or factors. The unknown factor is the disorder that affects the brain's ability to receive and process information...

, often in combination with other AT, such as screen magnifier
Screen magnifier
A screen magnifier is software that interfaces with a computer's graphical output to present enlarged screen content. It is a type of assistive technology suitable for visually impaired people with some functional vision; visually impaired people with little or no functional vision usually use a...

s.

A person's choice of screen reader is dictated by many factors, including platform, cost (even to upgrade a screen reader can cost hundreds of U.S. dollars), and the role of organizations like charities, schools, and employers. Screen reader choice is contentious: differing priorities and strong preferences are common.

Apple Inc. Mac OS X
Mac OS X
Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems...

 includes VoiceOver
VoiceOver
VoiceOver is a screen reader built into Apple Inc.'s Mac OS X operating system since version 10.4. By using VoiceOver, the user can access his or her Macintosh by using speech and the keyboard. The feature is designed to increase accessibility blind and low-vision users and users with dyslexia...

, a feature-rich screen reader. The console-based Oralux
Oralux
Oralux is an association whose objective is to foster digital accessibility using solutions based upon Free Software and open standards. The association proposes Voxin, an easily installable add-on which provides yet another text-to-speech to blind users of Linux....

 Linux
Linux
Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed,...

 distribution ships with three screen-reading environments: Emacspeak
Emacspeak
Emacspeak is a free screen reader for Emacs which is written in C, Emacs Lisp and Tcl and developed principally by T. V. Raman and first released May 1995; it is portable to all POSIX-compatible OSs...

, Yasr and Speakup. The open source GNOME
GNOME
GNOME is a desktop environment—a graphical user interface which runs on top of a computer operating system —composed entirely of free and open source software...

 desktop environment long included Gnopernicus
Gnopernicus
Gnopernicus is a free GNOME desktop application that provides Assistive Technologies 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,...

 and now includes Orca
Orca (assistive technology)
Orca is an open source, flexible, extensible assistive technology for people with visual impairments. Using various combinations of speech synthesis, braille, and magnification, Orca helps provide access to applications and toolkits that support the AT-SPI .The development of Orca has been led by...

.

There are also open source
Open source
Open source is an approach to the design, development, and distribution of software, offering practical accessibility to a software's source code. Some consider open source as one of various possible design approaches, while others consider it a critical strategic element of their operations...

 screen readers, such as the Linux Screen Reader for GNOME and NonVisual Desktop Access
NonVisual Desktop Access
NonVisual Desktop Access is a free, open source, portable screen reader for Microsoft Windows. The project was begun by in 2006. Although development progress has been rapid, it should still be considered alpha software, but this does not mean that it is not usable. NVDA is programmed in Python...

 for Windows.

The most widely used screen readers are separate commercial products: JAWS from Freedom Scientific
Freedom Scientific
Freedom Scientific is a corporation which researches, creates, and sells technology intended for people who are blind or have low vision and those with learning disabilities. The company's Blind and Low Vision Group's products include software and hardware to help people with low vision work with...

, Window-Eyes
Window-Eyes
Window-Eyes is a screen reader that makes a computer usable by someone who is blind or has low vision. It "reads" information by communicating directly with applications such as Internet Explorer, Mozilla Firefox, Microsoft Word, etc., or by gathering information from the display adapter and the...

 from GW Micro, System Access from Serotek, and ZoomText Magnifier/Reader from Ai Squared are prominent examples in the English-speaking market.

CLI (text) screen readers


In early operating systems, such as MS-DOS
MS-DOS
MS-DOS is an operating system developed by Microsoft. It was the most commonly used member of the DOS family of operating systems and was the main operating system for personal computers during the 1980s. It was preceded by M-DOS , designed and copyrighted by Microsoft in 1979...

, which employed command line interface
Command line interface
A command-line interface is a mechanism for interacting with a computer operating system or software by typing commands to perform specific tasks...

s (CLIs), the screen display consisted of characters mapping directly to a screen buffer in memory and a cursor position. Input was by keyboard. All this information could therefore all be obtained from the system either by hooking
Hooking
In computer programming, the term hooking covers a range of techniques used to alter or augment the behavior of an operating system, of applications, or of other software components by intercepting function calls or messages or events passed between software components...

 the flow of information around the system and reading the screen buffer or by using a standard hardware output socket and communicating the results to the user. This was relatively easy to engineer.

In the 1980s, the Research Centre for the Education of the Visually Handicapped (RCEVH) at the University of Birmingham developed Screen Reader for the BBC Micro and NEC Portable.

Off-screen models


With the arrival of graphical user interface
Graphical user interface
A graphical user interface is a type of user interface item that allows people to interact with programs in more ways than typing such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment with images rather than...

s (GUIs), the situation became more complicated. A GUI has characters and graphics drawn on the screen at particular positions, and as such there is no purely textual representation of the graphical contents of the display. Screen readers were therefore forced to employ new low-level techniques, gathering messages from the operating system
Operating system
An operating system is an interface between hardware and user which is responsible for the management and coordination of activities and the sharing of the resources of the computer that acts as a host for computing applications run on the machine. As a host, one of the purposes of an operating...

 and using these to build up an "off-screen model", a representation of the display in which the required text content is stored.

For example, the operating system might send messages to draw a command button and its caption. These messages are intercepted and used to construct the off-screen model. The user can switch between controls (such as buttons) available on the screen and the captions and control contents will be read aloud and/or shown on refreshable Braille display.

Screen readers can also communicate information on menus, controls, and other visual constructs to permit blind users to interact with these constructs. However, maintaining an off-screen model is a significant technical challenge: hooking the low-level messages and maintaining an accurate model are both difficult tasks.

Accessibility APIs


Operating system and application designers have attempted to address these problems by providing ways for screen readers to access the display contents without having to maintain an off-screen model. These involve the provision of alternative and accessible representations of what is being displayed on the screen accessed through an API
Application programming interface
An application programming interface is an interface in computer science that defines the ways by which an application program may request services from libraries and/or operating systems. An API determines the vocabulary and calling conventions the programmer should employ to use the services...

. Existing APIs include:
  • Apple Accessibility API.
  • AT-SPI
  • IAccessible2
    IAccessible2
    IAccessible2 is a new accessibility API for Microsoft Windows applications. Initially developed by IBM under the codename Project Missouri, IAccessible2 has been placed under the aegis of the Free Standards Group, now part of the Linux Foundation...

    ,
  • Microsoft Active Accessibility
    Microsoft Active Accessibility
    Microsoft Active Accessibility is an Application Programming Interface for user interface accessibility. MSAA was introduced as a platform add-on to Microsoft Windows 95 in 1997...

     (MSAA)
  • Microsoft UI Automation
    Microsoft UI Automation
    Microsoft UI Automation is an Application Programming Interface for User Interface accessibility that is designed to help Assistive Technology products interact with standard and custom UI elements of an application as well as to access, identify, and manipulate an application's UI elements...

  • Java Access Bridge


Screen readers can query the operating system or application for what is currently being displayed and receive updates when the display changes. For example, a screen reader can be told that the current focus is on a button and the button caption to be communicated to the user. This approach is considerably easier for screen readers, but fails when applications do not comply with the accessibility API: for example, Microsoft Word
Microsoft Word
Microsoft Word is a word processor designed by Microsoft. It was first released in 1983 under the name Multi-Tool Word for Xenix systems. Subsequent versions were later written for several other platforms including IBM PCs running DOS , the Apple Macintosh , Atari ST , SCO UNIX, OS/2, and Microsoft...

 does not comply with the MSAA API, so screen readers must still maintain an off-screen model for Word or find another way to access its contents. One approach is to use available operating system messages and application object models to supplement accessibility APIs: the Thunder screenreader operates without an off-screen model in this way. (Note: the latest version of Thunder also includes an off-screen model but has one that does not involve installing a device driver. Concequently it can be used on a memory stick without any files needing to be installed.)

Screen readers can be assumed to be able to access all display content that is not intrinsically inaccessible. Web browsers, word processors, icons and windows and email programs are just some of the applications used successfully by screen reader users. However, using a screen reader is, according to some users, considerably more difficult than using a GUI and many applications have specific problems resulting from the nature of the application (e.g. animations in Macromedia Flash) or failure to comply with accessibility standards for the platform (e.g. Microsoft Word and Active Accessibility).

Self-voicing applications


Some programs speak or make other sounds so that they can be used by blind people or people who cannot see the screen. These programs are termed self-voicing
Self-voicing
A self-voicing application is an application that provides an aural interface without requiring a separate screen reader. Self-voicing applications can be an important form of assistive technology, useful to those who have difficulty reading or seeing....

 and can be a form of assistive technology
Assistive technology
Assistive technology is a generic term that includes assistive, adaptive, and rehabilitative devices for people with disabilities and includes the process used in selecting, locating, and using them....

 if they are designed to remove the need to use a screen reader.

Web-based screen readers


A relatively new development in the field is web-based applications like Spoken-Web that is web portal, managing content like news updates, weather, science and business articles for visually impaired or blind computer users. Or BrowseAloud that adds text-to-speech functionality to web content. The primary audience for such applications is those who have difficulty reading because of learning disabilities or language barriers. Although functionality remains limited compared to equivalent desktop applications, the major benefit is to increase the accessibility of said websites when viewed on public machines where users do not have permission to install custom software, giving people greater 'freedom to roam'.

Screen reader customization


Not only do screen readers differ widely from each other, but most are highly configurable. For example, most screen readers allow the user to select whether most punctuation
Punctuation
Punctuation is everything in written language other than the actual letters or numbers, white space, and indentation.Punctuation marks are symbols that correspond to neither phonemes of a language nor to lexemes , but which serve to indicate the structure and organization of writing, as well as...

 is announced or silently ignored. Some screen readers can be tailored to a particular application through scripting. One advantage of scripting is that it allows customizations to be shared among users, increasing accessibility for all. JAWS enjoys an active script-sharing community, for example.

Emulators


Verbosity


Verbosity is a term used to describe a feature of screen reading software that support vision-impaired computer users. Speech verbosity controls enable users to choose how much speech feedback they wish to hear. Specifically, verbosity settings allow users to construct a mental model of web pages displayed on their computer screen. Based on verbosity settings, a screen-reading program informs users of certain formatting changes, such as when a frame or table begins and ends, where graphics have been inserted into the text, or when a list appears in the document.

Some screen reading programs also include language verbosity, which automatically detects verbosity settings related to speech output language. For example, if a user navigated to a website based in the United Kingdom, the text would be read with a British accent.

Language


Some screen readers can read text in more than one language
Language
A language is a system for encoding and decoding information. In its most common use, the term refers to so-called "natural languages" — the forms of communication considered peculiar to humankind. In linguistics the term is extended to refer to the human cognitive facility of creating and using...

, providing that the language of the material is encoded in its metadata
Metadata
Metadata is "data about data", of any sort in any media. Metadata is text, voice, or image that describes what the audience wants or needs to see or experience. The audience could be a person, group, or software program...

.

See also


  • List of screen readers
  • Screen magnifier
    Screen magnifier
    A screen magnifier is software that interfaces with a computer's graphical output to present enlarged screen content. It is a type of assistive technology suitable for visually impaired people with some functional vision; visually impaired people with little or no functional vision usually use a...

  • Self-voicing
    Self-voicing
    A self-voicing application is an application that provides an aural interface without requiring a separate screen reader. Self-voicing applications can be an important form of assistive technology, useful to those who have difficulty reading or seeing....

  • Speech processing
    Speech processing
    Speech processing is the study of speech signals and the processing methods of these signals.The signals are usually processed in a digital representation, so speech processing can be regarded as a special case of digital signal processing, applied to speech signal.It is also closely tied to...

  • Speech recognition
    Speech recognition
    Speech recognition converts spoken words to text. The term "voice recognition" is sometimes used to refer to speech recognition where the recognition system is trained to a particular speaker - as is the case for most desktop recognition software, hence there is an aspect of speaker recognition,...

  • Text to speech