Debian-Acessibilidade - Software

Síntese de fala e APIs relacionadas

Uma lista minuciosa está disponível na página da tarefa speechsynthesis

EFlite

Um servidor de fala para o Emacspeak e o yasr (ou outros leitores de tela) que os permite fazer interface com o Festival Lite, um motor livre para conversão de texto em fala desenvolvido pelo CMU Speech Center como um derivado do Festival.

Devido a limitações herdadas de seu backend, o EFlite somente provê suporte para a língua inglesa no momento.

eSpeak

O eSpeak/eSpeak-NG é um software sintetizador de fala para o inglês e alguns outros idiomas.

O eSpeak produz fala em inglês de boa qualidade. Ele usa um método de síntese diferente de outros motores de texto para fala (TTS - text to speech) de código aberto (sem síntese de fala por concatenação, portanto ele deixa pouco vestígio), e soa bem diferente. Talvez não seja tão natural ou suave, mas algumas pessoas acham a articulação mais clara e fácil de ouvir por longos períodos.

Ele pode ser executado via programa de linha de comando para falar texto de um arquivo ou da entrada padrão (stdin). Ele também funciona como um Talker (sintetizador de voz) com o sistema de texto para fala do KDE (KTTS - KDE text to speech) como uma alternativa ao Festival, por exemplo. Nesse sentido, ele pode falar texto que foi selecionado para a área de transferência, ou diretamente do navegador Konqueror ou do editor Kate.

eSpeak também pode ser usado com o Speech Dispatcher.

Festival Lite

Um motor de síntese de fala pequeno e de rápida execução. É a última adição ao pacote de ferramentas livres de softwares de síntese, incluindo o Festival Speech Synthesis System da Universidade de Edinburgh e o projeto FestVox da Universidade Carnegie Mellon; além de ferramentas, scripts e documentação para construção de vozes sintéticas. Contudo, o flite propriamente dito não requer nenhum desses sistemas para rodar.

Atualmente só suporta a língua inglesa.

Festival

Um sistema genérico e multi-idioma de síntese de fala desenvolvido no CSTR [Centre for Speech Technology Research] da Universidade de Edinburgh.

O Festival oferece um sistema completo de texto para fala com várias APIs, mas também um ambiente para desenvolvimento e pesquisa de técnicas de síntese de fala. É escrito em C++ com um interpretador de comando baseado em Scheme para controle geral.

Além de pesquisa com síntese de fala, o Festival é útil como um programa autônomo de síntese de fala. Ele é capaz de produzir falas claramente compreensíveis dos textos.

Speech Dispatcher

Fornece uma camada independente de dispositivo para síntese de fala. Ele suporta vários softwares e hardwares de síntese de fala como backends e provê uma camada genérica para síntese de fala e para reprodução de dados PCM através daquelas diferentes backends para os aplicativos.

Muitos conceitos de alto nível como enfileiramento versus interrupção de fala, e configurações de usuário(a) específicas ao aplicativo, são implementados de uma maneira independente ao dispositivo; consequentemente liberando o(a) programador(a) do aplicativo de ter que reinventar a roda.

Síntese de fala internacionalizada

Todas as atuais soluções livres disponíveis para síntese de fala baseada em software parecem compartilhar uma deficiência comum: elas são restritas à língua inglesa, oferecendo somente suporte muito marginal aos outros idiomas; ou em muitos casos, não oferecendo suporte algum. Entre todos os softwares livres de síntese de fala para Linux, somente o CMU Festival suporta mais de uma língua natural. O CMU Festival pode sintetizar inglês, espanhol e galês. Alemão não é suportado. Francês não é suportado. Russo não é suportado. Em um momento em que internacionalização e localização são tendências no mundo do software e dos serviços web, é razoável demandar que pessoas com deficiência visual interessadas no Linux tenham que aprender inglês somente para entender as saídas geradas pelo computador e para conduzir todas as suas ações em uma língua estrangeira?

Infelizmente, a síntese de fala não é o projeto preferido que a Jane Hacker (uma conhecida inventora) faz na casa dela. Criar um software sintetizador de fala inteligível envolve tarefas que consomem tempo. Síntese de fala por concatenação requer a criação cuidadosa de um banco de dados de fonemas contendo todas as possíveis combinações de som para um determinado idioma. Regras que determinem a transformação da representação de texto em fonemas individuais também precisam ser desenvolvidas e detalhadamente ajustadas, geralmente demandando a divisão de sequências de caracteres em grupos lógicos como orações, frases e palavras. Tal análise lexicográfica requer um léxico específico ao idioma que raramente é lançado sob uma licença livre.

Um dos mais promissores sistemas de síntese de fala é o Mbrola, com bancos de dados de fonemas para diversos idiomas. A síntese propriamente dita é software livre. Infelizmente, os bancos de dados de fonemas são apenas para uso não militar e não comercial. Temos uma ausência de bancos de dados de fonemas para serem usados no sistema operacional Debian.

Sem um software sintetizador de fala amplamente multi-idioma, o Linux não pode ser aceito por provedores de tecnologia assistiva e pessoas com deficiências visuais. O que podemos fazer para melhorar isso?

Existem basicamente duas abordagens possíveis:

  1. Organizar um grupo de pessoas dispostas a ajudar nesta questão e tentar, ativamente, melhorar a situação. Isto pode ser um pouco complicado, já que é necessário um grande conhecimento específico sobre síntese de fala, e tal conhecimento não é fácil de se obter por meio de uma abordagem autodidata. Entretanto, isto não deve desencorajar você. Se você acha que pode motivar um grupo de pessoas grande o suficiente para alcançar algumas melhorias, pode ser que valha a pena fazê-lo.
  2. Obter financiamento e contratar um instituto que já tenha experiência na criação dos bancos de dados de fonemas necessários, regras léxica e de transformação. Esta abordagem tem a vantagem de obter uma maior probabilidade de gerar resultados com qualidade e deve alcançar algumas melhorias muito mais cedo do que a primeira abordagem. Claro que a licença sob a qual todo o trabalho produzido deve ser lançado deve ser acordado antecipadamente, e deve passar pelos requisitos da DFSG. A solução ideal seria, com certeza, convencer alguma universidade a perfazer tal projeto com seu próprio dinheiro e contribuir com os resultados para a comunidade de software livre.

Por fim, mas não menos importante, parece que os produtos de síntese de fala de maior sucesso comercial hoje não usam mais a síntese de fala por concatenação, principalmente porque os bancos de dados de sons consomem muito espaço de disco. Isto não é realmente desejado para pequenos produtos embarcados, como por exemplo fala em telefones celulares. Softwares livres recentemente lançados como o eSpeak parecem tentar esta abordagem, o que pode ser muito vantajoso dar uma olhada.

Extensões do Emacs para leitura de tela

Emacspeak

Um sistema de produção de fala que permitirá a alguém com deficiência visual trabalhar diretamente em um sistema UNIX. Uma vez que se inicie o Emacs com o Emacspeak carregado, recebe-se um retorno falado para tudo o que se faz. Seu benefício dependerá de quão bem você usa o Emacs. Não há nada que você não possa fazer dentro do Emacs :-). Este pacote inclui servidores de fala escritos em tcl para suporte ao sintetizadores de fala DECtalk Express e DECtalk MultiVoice. Para outros sintetizadores, procure por pacotes de servidores de fala separados, como o Emacspeak-ss ou eflite.

speechd-el

Cliente Emacs para sintetizadores de fala, linhas braille e outras interfaces de saída alternativas. Ele fornece um ambiente de saída completo de fala e braille para Emacs. Ele destina-se primeiramente para usuários(as) com deficiência visual que precisam de comunicação não visual com o Emacs, mas pode ser usado por qualquer pessoa que necessite de fala sofisticada ou outro tipo de saída alternativa do Emacs.

Leitores de tela para console (modo texto)

Uma lista minuciosa está disponível na página da tarefa dos leitores de tela para console

BRLTTY

Um daemon que fornece acesso ao console do Linux para uma pessoa com deficiência visual que esteja usando uma linha braille. Ele controla o terminal braille e fornece uma funcionalidade completa de leitura de tela.

Os dispositivos Braille suportados pelo BRLTTY estão listados na documentação de dispositivos BRLTTY

O BRLTTY também fornece uma infraestrutura baseada em cliente/servidor para aplicações que desejem utilizar uma linha braille. O processo daemon aguarda por conexões TCP/IP de entrada em uma certa porta. Uma biblioteca compartilhada de objetos para clientes é fornecida no pacote libbrlapi. Uma biblioteca estática, arquivos de cabeçalho e documentação são fornecidos no pacote libbrlapi-dev. Esta funcionalidade é, portanto, usada pelo Orca para fornecer suporte para tipos de linhas braille que ainda não são suportadas diretamente pelo Gnopernicus.

Yasr

Um console de leitor de tela de propósito geral para GNU/Linux e outros sistemas operacionais UNIX-like. O nome yasr é um acrônimo que pode significar tanto Yet Another Screen Reader (ainda outro leitor de tela) ou Your All-purpose Screen Reader (seu leitor de tela para todos os propósitos).

Atualmente, o yasr tenta suportar os hardwares sintetizadores Speak-out, DEC-talk, BNS, Apollo e DoubleTalk. Ele também consegue se comunicar com os servidores de fala Emacspeak e desse modo pode ser usado com sintetizadores que ainda não são suportados, como o Festival Lite (via eflite) ou FreeTTS.

O Yasr funciona abrindo um pseudo-terminal e executando um interpretador de comandos, interceptando todas as entradas e saídas. Ele olha para todas as sequências de escape que estão sendo enviadas e mantém uma janela virtual contendo o que ele acredita que esteja na tela. Ele então não usa qualquer funcionalidade específica do Linux e pode ser portado para outros sistemas operacionais UNIX-like sem muitas preocupações.

Interfaces gráficas do(a) usuário(a)

Somente recentemente a acessibilidade em interfaces gráficas de usuários(as) em plataformas UNIX receberam aperfeiçoamentos significativos com os vários esforços de desenvolvimento em torno do Desktop GNOME, especialmente o projeto de acessibilidade do GNOME. (GNOME Accessibility Project).

Software de acessibilidade do GNOME

Uma lista minuciosa está disponível na página da tarefa Gnome accessibility

Assistive Technology Service Provider Interface

Este pacote contém os componentes essenciais de acessibilidade do GNOME. Ele permite que fornecedores de tecnologia assistiva, como leitores de tela, requisitem informações relativas à acessibilidade para todas as aplicações que estejam executando no desktop, como também fornece mecanismos de ligação para suportar outros conjuntos de ferramentas que não o GTK.

Conexões com a linguagem Python são fornecidas no pacote python-at-spi.

The ATK accessibility toolkit

O ATK é um conjunto de ferramentas que fornece interfaces de acessibilidade para aplicações ou para outros conjuntos de ferramentas. Ao implementar essas interfaces, esses outros conjuntos de ferramentas ou aplicações podem ser usados com ferramentas como leitores de tela, lentes de aumento e dispositivos alternativos de entrada.

A parte de runtime do ATK, necessária para executar aplicações construídas com ele, está disponível no pacote libatk1.0-0. Arquivos de desenvolvimento para o ATK, necessários para compilação de programas ou conjuntos de ferramentas que o utilizam, são fornecidos pelo pacote libatk1.0-dev. Conexões com a linguagem Ruby são fornecidos pelo pacote ruby-atk.

gnome-accessibility-themes

O pacote gnome-accessibility-themes contém alguns temas de grande acessibilidade para o ambiente de área de trabalho do GNOME, projetados para pessoas com baixa visão.

Um total de 7 temas são fornecidos, possibilitando combinações de contraste alto, baixo ou invertido, como também texto e ícones ampliados.

gnome-orca

O Orca é um leitor de tela flexível e extensível que fornece acesso à área de trabalho gráfica através de combinações de fala, braille e/ou ampliação, combinações que podem ser personalizadas pelo(a) usuário(a). Sob o desenvolvimento da Sun Microsystems, Inc., Accessibility Program Office desde 2004, o Orca foi criado desde o início com o envolvimento de seus(as) usuários(as) finais, e assim continua até hoje.

O Orca pode usar o Speech Dispatcher para prover saída de fala para o(a) usuário(a). O BRLTTY é usado para suporte à linha braille (e para integração suave com leitores braille de console e interface gráfica).

Software de acessibilidade do KDE

Uma lista minuciosa está disponível na página da tarefa KDE accessibility

kmag

Amplia uma parte da tela do mesmo modo como você usaria uma lente para ampliar uma letra pequena do jornal ou uma fotografia. Esta aplicação é útil para uma variedade de pessoas: de pesquisadores(as) a artistas, de designers web até para pessoas com baixa visão.

Métodos de entrada não padronizados

Uma lista minuciosa está disponível na página da tarefa de métodos de entrada

Dasher

O Dasher é uma interface de entrada de texto eficiente quanto à informação, orientada por gestos naturais e contínuos de apontar. O Dasher é um sistema de entrada de texto interessante sempre que um teclado de tamanho completo não pode ser usado - por exemplo,

A versão com sensor ocular do Dasher permite que um(a) usuário(a) experiente escreva texto tão rápido quanto uma escrita à mão normal - 25 palavras por minuto; usando um mouse, usuários(as) experientes podem escrever 39 palavras por minuto.

O Dasher usa um algorítimo de predição mais avançado que o sistema T9(c) usado em telefones celulares, fazendo-o sensível ao contexto do entorno.

Caribou

O Caribou é uma tecnologia de entrada assistiva direcionada para usuários(as) de controles e gestos. Ele fornece um teclado configurável em tela com modo de escaneamento.