Hi. [Please CC me, I'm not (yet?) subscribed.] Initiated by a discussion I've just had with Andreas Tille, I finally sat down to write up some project page describing the Debian Accessibility effort to enhance the visibility of the whole effort and maybe draw some more attention towards it. Please consider attached files for inclusion in the tree in a new subdirectory english/devel/debian-accessibility. This is the first time I do anything inside Debian's webwml tree, so I am quite sure I missed something an experienced webwml hacker will immediately spot. I'm glad about corrections.
Attachment:
pgpFMGTsqdqWv.pgp
Description: PGP signature
Attachment:
Makefile
Description: The Makefile
#use wml::debian::template title="Debian-Accessibility"
#use wml::debian::recent_list
{#style#:<link rel="stylesheet" href="style.css" type="text/css" />:#style#}
<H2>Project description</H2>
<P>Debian-Accessibility is an internal project to develop Debian into an
operating system that is particularly well fit for the requirements of
people with disabilities.
The goal of Debian-Accessibility is a completely accessible system
which offers users with disabilities the highest possible amount
of independence which is built completely on free software.
</p>
<p>We envisage that Debian-Accessibility will add value to existing
packages by providing patches to fix problems very special
to certain user groups or conducting Accessibility validation tests and
providing modification suggestions based on the results.
</P>
<h2><a id="email-list" name="email-list">Email List</a></h2>
<p>The Debian-Accessibility mailing list is the central point of communication
for Debian-Accessibility. It serves as a forum for potential as
well as current users of the Debian system who do have special needs.
Additionally, it is used to coordinate development efforts around the varios
topics of Accessibility. You can subscribe to
and unsubscribe from it using
<A href="http://lists.debian.org/debian-accessibility/">the list web page</A>,
and also read the <A href="http://lists.debian.org/debian-accessibility/">list archives</A>.
</P>
<H2><a id="projects" name="projects">Relevant Software</a></h2>
<P>The first attempt to put the software into categories might be not
the best. Send any suggestions for improvements to
<A href="#email-list">the mailing list</A>, or to
<A href="mailto:mlang@debian.org">Mario Lang</a>.
</P>
<UL>
<LI><A href="software.en.html#speech-synthesis">Speech synthesis and related APIs</A></LI>
<LI><A href="software.en.html#console">Console (text-mode) screen readers</A></LI>
<LI><A href="software.en.html#emacs">Screen review extensions for Emacs</A></LI>
<LI><A href="software.en.html#gui">Graphical User Interfaces</A>:
<UL>
<LI><A href="software.en.html#gnome">GNOME Accessibility</A></LI>
<LI><A href="software.en.html#input">Non-standard input methods</A></LI>
</UL></LI>
</UL>
<H2><A id="goals" name="goals">Project goals</A></H2>
<UL>
<LI>Provide information and documentation of Accessibility.</LI>
<LI>Ensure that Accessibility software like drivers for specialized
peripheral devices can be loaded if necessary as early as possible in
the system startup phase, including the Debian installation process.
This is to ensure that people with special needs retain
a high level of independence during maintainance of their own systems.</LI>
<LI>Verify and ensure that Debian core infrastructure like our Web site does
comply with Accessibility Guidelines.</LI>
<LI>Bring authors of different projects with similar goals together.</LI>
<LI>Help upstream authors to get their products packaged for Debian.</LI>
<LI>Show commercial assistive technology vendors the strengths of Free
Software based systems and make them consider to port their software
to Linux or even to switch to Open Source.</LI>
</UL>
<h2><a id="help" name="help">What can I do to help?</a></h2>
<UL>
<LI>Work on enhancing and translating these web pages.</LI>
<LI>Create a logo.</LI>
<LI>Documentation and translation.</LI>
<LI>Internationalization (which is more than just translating, see
<A href="software.en.html#i18nspeech">intenationalized speech synthesis</A> for
some ideas).</LI>
<LI>Verify that the debian.org web site is Accessible according to
established Accessibility Guidelines and sumbit enhancement suggestions
based on your findings. It could eventually be desireable to apply for
something like Bobby Approval at some point.</LI>
</UL>
<h2><a id="links" name="links">Links</a></h2>
<UL>
<LI><A href="http://leb.net/blinux/">BLINUX</A>: Improve usability of the
GNU/Linux operating system for the user who is blind.</LI>
<LI><A href="http://developer.gnome.org/projects/gap/">The GNOME
Accessibility Project</A>.</LI>
<LI><A href="http://accessibility.kde.org/">The KDE Accessibility
Project</A>.</LI>
<LI><A href="http://www.linux-speakup.org/">The Linux Speakup
Project</A>.</LI>
<LI><A href="http://www.w3.org/WAI/">W3C's Web Accessibility Initiative
(WAI)</A>:
<UL>
<LI>The <A href="http://www.w3.org/TR/WCAG10/">Web Content
Accessibility Guidelines</A> explain in detail how to make a Web
site accessible for people with a variety of disabilities.</LI>
<LI>The <A href="http://www.w3.org/TR/ATAG10/">Authoring Tool
Accessibility Guidelines</A> explain how to make a variety of
authoring tools support the production of accessible Web
content, and also how to make the software itself accessible.</LI>
</UL></LI>
<LI><A href="http://bobby.watchfire.com/bobby/html/en/index.jsp">Bobby(TM)</A>
will allow you to test web pages for compliance with existing
accessibility guidelines, such as Section 508 and the W3C's WCAG.</LI>
</UL>
#use wml::debian::template title="Debian-Accessibility - Software"
{#style#:<link rel="stylesheet" href="style.css" type="text/css" />:#style#}
<define-tag a11y-pkg endtag=required>
<preserve name tag url/>
<set-var %attributes>
<h3><if "<get-var url>"
<a href="<get-var url>" name="<get-var tag>"><get-var name></a>
<a name="<get-var tag>"><get-var name></a>></h3>
<P>
%body
</P>
<restore name tag url/>
</define-tag>
<h2><a id="speech-synthesis" name="speech-synthesis">Speech Synthesis and related APIs</a></h2>
<a11y-pkg name="EFlite" tag=eflite url="http://eflite.sourceforge.net/">
A speech server for <A href="#emacspeak">Emacspeak</A> and
<A href="#yasr">yasr</A> (or other screen readers) that allows them to
interface with <A href="#flite">Festival Lite</A>, a free text-to-speech
engine developed at the CMU Speech Center as an off-shoot of
<A href="#festival">Festival</A>.
</P>
<P>
Due to limitations inherited from its backend, EFlite does only provide
support for the English language at the moment.
</a11y-pkg>
<a11y-pkg name="Festival Lite" tag=flite>
A small fast run-time speech synthesis engine. It is the latest
addition to the suite of free software synthesis tools including
University of Edinburgh's Festival Speech Synthesis System and
Carnegie Mellon University's FestVox project, tools, scripts and
documentation for building synthetic voices. However, flite itself
does not require either of these systems to run.
</P>
<P>
It currently only supports the English language.
</a11y-pkg>
<a11y-pkg name="Festival" tag="festival"
url="http://www.cstr.ed.ac.uk/projects/festival/">
A general multi-lingual speech synthesis system developed
at the <A href="http://www.cstr.ed.ac.uk/">CSTR</A> [<i>C</i>entre for
<i>S</i>peech <i>T</i>echnology <i>R</i>esearch] of
<A href="http://www.ed.ac.uk/text.html">University of Edinburgh</A>.
</P>
<P>
Festival offers a full text to speech system with various APIs, as well an
environment for development and research of speech synthesis techniques.
It is written in C++ with a Scheme-based command interpreter for general
control.
</P>
<P>
Besides research into speech synthesis, festival is useful as a stand-alone
speech synthesis program. It is capable of producing clearly understandable
speech from text.
</a11y-pkg>
<a11y-pkg name="recite" tag="recite">
Recite is a program to do speech synthesis. The quality of sound produced
is not terribly good, but it should be adequate for reporting the occasional
error message verbally.
</P>
<P>
Given some English text, recite will convert it to a series of phonemes,
then convert the phonemes to a sequence of vocal tract parameters, and
then synthesis the sound a vocal tract would make to say the sentence.
Recite can perform a subset of these operations, so it can be used to
convert text into phonemes, or to produce an utterance based on vocal
tract parameters computed by another program.
</a11y-pkg>
<a11y-pkg name="Speech Dispatcher" tag="speech-dispatcher"
url="http://www.freebsoft.org/speechd">
Provides a device independent layer for speech synthesis.
It supports various software and hardware speech synthesizers as
backends and provides a generic layer for synthesizing speech and
playing back PCM data via those different backends to applications.
</P>
<P>
Various high level concepts like enqueueing vs. interrupting speech
and application specific user configurations are implemented in a device
independent way, therefore freeing the application programmer from having
to yet again reinvent the wheel.
</a11y-pkg>
<H2><A name="i18nspeech">Internationalised Speech Synthesis</A></H2>
<P>
All the currently available free solutions for software based speech
synthesis seem to share one common deficiency: They are mostly limited to
English, providing only very marginal support for other languages, or in
most cases none at all.
Among all the free software speech synthesizers for Linux, only CMU
Festival supports more than one natural language. CMU Festival can
synthesize English, Spanish and Welsh. German is not
supported. French is not supported. Russian is not supported. When
internationalization and localization are the trends in software and
web services, is it reasonable to require blind people interested in
Linux to learn English just to understand their computer's output and to
conduct all their correspondence in a foreign tongue?
</P>
<P>
Unfortunately, speech synthesis is not really Jane Hacker's favourite
homebrew project. Creating an intelligible software speech
synthesizer involves time-consuming tasks.
Concatenative speech synthesis requires the careful creation of a
phoneme database containing all the possible combinations of sounds
for the target language.
Rules that determine the transformation of the text representation
into individual phonemes also need to be developed and fine-tuned,
usually requiring the division of the stream of characters into
logical groups such as sentences, phrases and words. Such lexical
analysis requires a language-specific lexicon seldom released under a
free license.
</P>
<P>
One of the most promising speech synthesis systems is Mbrola, with
phoneme databases for over ten different languages. Unfortunately, the license
chosen by the project is very restrictive. Mbrola can only be distributed as
a pre-built binary. In addition, the phoneme databases are for
non-military and non-commercial use only. We contacted the project
developers, but they were unable to change the licensing of their
work due to the limitations set by various contributors. Unfortunately,
given the restrictive licensing model of Mbroa, it can not be used
as a basis for further work in this direction, at least not in the context
of the Debian Operating System.
</P>
<P>
Without a broadly multi-lingual software speech synthesizer, Linux
cannot be accepted by assistive technology providers and people with
visual disabilities. What can we do to improve this?
</P>
<P>
There are basically two approaches possible:
<OL>
<LI>Organize a group of people willing to help in this regard, and
try to actively improve the situation. This might get a bit complicated,
since a lot of specific knowledge about speech synthesis will be required,
which isn't that easy if done via an autodidactic approach. However, this
should not discourage you. If you think you can motivate a group of
people large enough to achieve some improvements, it would be worthwhile
to do.</LI>
<LI>Obtain funding and hire some institute which already has the
know how to create the necessary phoneme databases, lexica and transformation
rules. This approach has the advantage that it has a better probability
of generating quality results, and it should also achieve some improvements
much earlier than the first approach. Of course, the license under which all
resulting work would be released should be agreed on in advance, and it should
pass the DFSG requirements. The ideal solution would of course
be to convince some university to undergo such a project on their own
dime, and contribute the results to the Free Software community.</LI>
</OL>
<H2><A id="emacs" name="emacs">Screen review extensions for Emacs</A></H2>
<a11y-pkg name="Emacspeak" tag="emacspeak"
url="http://emacspeak.sourceforge.net/">
A speech output system that will allow someone who cannot see
to work directly on a UNIX system. Once you start emacs with
emacspeak loaded, you get spoken feedback for everything you do. Your
mileage will vary depending on how well you can use Emacs. There is nothing
that you cannot do inside Emacs :-). This package includes speech servers
written in tcl to support the DECtalk Express and DECtalk MultiVoice
speech synthesizers. For other synthesizers, look for separate
speech server packages such as emacspeak-ss or <A href="#eflite">eflite</A>.
</a11y-pkg>
<a11y-pkg name="speechd-el" tag="speechd-el"
url="http://www.freebsoft.org/speechd-el">
An Emacs client and an Elisp library to
<A href="#speech-dispatcher">Speech Dispatcher</A>. It provides a complex
speech interface to Emacs, focused especially on (but not limited to) the
blind and visually impaired users. It allows the user to work with Emacs
without looking on the screen, using the speech output produced by the
synthesizers supported in Speech Dispatcher.
</deb>
<h2><a id="console" name="console">Console (text-mode) screen readers</a></h2>
<deb name="BRLTTY" tag="brltty" url="http://mielke.cc/brltty/">
A daemon which provides access to the Linux console for a blind
person using a soft braille display.
It drives the braille terminal and provides complete screen review
functionality.
</P>
<P>
The following display models are currently (as of version 3.4.1-2) supported:
<UL>
<LI>Alva (ABT3xx/Delphi)</LI>
<LI>BrailleLite (18/40)</LI>
<LI>BrailleNote (18/32)</LI>
<LI>EcoBraille displays</LI>
<LI>EuroBraille displays</LI>
<LI>HandyTech (Bookworm/Braillino/Braille Wave/Braille Star 40/80)</LI>
<LI>LogText 32</LI>
<LI>MDV braille displays</LI>
<LI>Papenmeier</LI>
<LI>Tieman Voyager 44/70 (USB), CombiBraille, MiniBraille and MultiBraille</LI>
<LI>TSI (PowerBraille/Navigator)</LI>
<LI>Vario (Emul. 1 (40/80)/Emul. 2)</LI>
<LI>Videobraille</LI>
<LI>VisioBraille</LI>
</UL>
BRLTTY also provides a client/server based infrastructure for applications
wishing to utilize a Braille display. The daemon process listens for
incoming TCP/IP connections on a certain port. A shared object library
for clients is provided in the package
<A href="http://packages.debian.org/libbrlapi">libbrlapi</A>. A static
library, header files and documentation is provided in package
<A href="http://packages.debian.org/libbrlapi-dev">libbrlapi-dev</A>. This
functionality is for instance used by <A href="#gnopernicus">Gnopernicus</A>
to provide support for display types which are not yet support by Gnopernicus
directly.
</a11y-pkg>
<a11y-pkg name="Screader" tag="screader"
url="http://www.euronet.nl/~acj/eng-screader.html">
The background program screader reads the screen and puts the information
through to a software Text-To-Speech package (Like
`<A href="#festival">festival</A>') or a hardware speech synthesizer.
</a11y-pkg>
<a11y-pkg name="Speakup" tag="speakup"
url="http://www.linux-speakup.org/speakup.html">
The kernel package
<A href="http://packages.debian.org/kernel-image-2.4.24-speakup">kernel-image-2.4.24-speakup</A>
contains a Linux kernel patched with speakup, a screen reader for the Linux
console. The special property of speakup is that it runs in kernel space,
which does provide a little bit more low level access to the system then
other screen readers can provide.
Speakup can for instance read critical kernel messages to you at a point
where the kernel has already Oopsed, and no user space program could do
anything useful at all anymore.
</P>
<P>
Speakup currently supports the following hardware speech synthesizers:
<UL>
<LI>DoubleTalk PC/LT</LI>
<LI>LiteTalk</LI>
<LI>Accent PC/SA</LI>
<LI>Speakout</LI>
<LI>Artic Transport</LI>
<LI>Audapter</LI>
<LI>Braille 'N Speak / Type 'N Speak</LI>
<LI>Dectalk External and Express</LI>
<LI>the Apollo2</LI>
</UL>
</a11y-pkg>
<a11y-pkg name="Yasr" tag="yasr" url="http://yasr.sourceforge.net/">
A general-purpose console screen reader for GNU/Linux and
other Unix-like operating systems. The name "yasr" is an acronym that
can stand for either "Yet Another Screen Reader" or "Your All-purpose
Screen Reader".
</P>
<P>
Currently, yasr attempts to support the Speak-out, DEC-talk, BNS, Apollo,
and DoubleTalk hardware synthesizers. It is also able to communicate with
Emacspeak speech servers and can thus be used with synthesizers not directly
supported, such as <A href="#flite">Festival Lite</A> (via
<A href="#eflite">eflite</A>) or FreeTTS.
</P>
<P>
Yasr works by opening a pseudo-terminal and running a shell, intercepting
all input and output. It looks at the escape sequences being sent and
maintains a virtual "window" containing what it believes to be on the
screen. It thus does not use any features specific to Linux and can be
ported to other Unix-like operating systems without too much trouble.
</a11y-pkg>
<H2><A id="gui" name="gui">Graphical User Interfaces</A></H2>
<P>
Accessibility of graphical user interfaces on UNIX platforms has only recently
received a significant upswing with the various development efforts around the
<A href="http://www.gnome.org/">GNOME Desktop</A>, especially the
<A href="http://developer.gnome.org/projects/gap/">GNOME Accessibility Project</A>.
</P>
<H2><A id="gnome" name="gnome">GNOME Accessibility Software</A></H2>
<a11y-pkg name="Assistive Technology Service Provider Interface" tag="at-spi">
This package contains the core components of GNOME Accessibility.
It allows Assistive technology providers like screen readers to
query all applications running on the desktop for accessibility
related information as well as provides bridging mechanisms to support
other toolkits than GTK.
</a11y-pkg>
<a11y-pkg name="The ATK accessibility toolkit" tag="atk">
ATK is a toolkit providing accessibility interfaces for applications or
other toolkits. By implementing these interfaces, those other toolkits or
applications can be used with tools such as screen readers, magnifiers, and
other alternative input devices.
</P>
<P>
The runtime part of ATK, needed to run applications built with it is available
in package <A href="http://packages.debian.org/libatk1.0-0">libatk1.0-0</a>.
Development files for ATK, needed for compilation of programs or toolkits
which use it are provided by package <A href="http://packages.debian.org/libatk1.0-dev">libatk1.0-dev</A>.
</a11y-pkg>
<a11y-pkg name="gnome-speech" tag="gnome-speech">
The GNOME Speech library gives a simple yet general API for programs
to convert text into speech, as well as speech input.
</P>
<P>
Multiple backends are supported, but currently only the
<A href="#festival">Festival</A> backend is enabled in this package; the
other backends require either Java or proprietary software.
</a11y-pkg>
<a11y-pkg name="Gnopernicus" tag="gnopernicus"
url="http://www.baum.ro/gnopernicus.html">
Gnopernicus is designed to allow users with limited or no vision to
access GNOME applications. It provides a number of features, including
magnification, focus tracking, braille output, and more.
</a11y-pkg>
<H2><A id="input" name="input">Non-standard input methods</A></H2>
<a11y-pkg name="dasher" url="http://www.inference.phy.cam.ac.uk/dasher/">
Dasher is an information-efficient text-entry interface, driven by natural
continuous pointing gestures. Dasher is a competitive text-entry system
wherever a full-size keyboard cannot be used - for example,
<UL>
<LI>on a palmtop computer</LI>
<LI>on a wearable computer</LI>
<LI>when operating a computer one-handed, by joystick, touchscreen,
trackball, or mouse</LI>
<LI>when operating a computer with zero hands (i.e., by head-mouse or by
eyetracker).</LI>
</UL>
The eyetracking version of Dasher allows an experienced user to write text
as fast as normal handwriting - 25 words per minute; using a mouse,
experienced users can write at 39 words per minute.
</PI>
<P>
Dasher uses a more advanced prediction algorithm than the T9(tm) system
often used in mobile phones, making it sensitive to surrounding context.
</a11y-pkg>
<a11y-pkg name="gok" url="http://www.gok.ca/">
GOK [<i>G</i>NOME <i>O</i>nscreen <i>K</i>eyboard] is a dynamic onscreen
keyboard for UNIX and UNIX-like operating systems. It features Direct
Selection, Dwell Selection, Automatic Scanning and Inverse Scanning access
methods and includes word completion.
</P>
<P>
GOK includes an alphanumeric keyboard and a keyboard for launching
applications. Keyboards are specified in XML enabling existing
keyboards to be modified and new keyboards to be created. The access
methods are also specified in XML providing the ability to modify existing
access methods and create new ones.
</a11y-pkg>
--
Thanks,
Mario | Debian Developer <URL:http://debian.org/>
| Get my public key via finger mlang@db.debian.org
| 1024D/7FC1A0854909BCCDBE6C102DDFFC022A6B113E44