Transcript
  • U N I V E R S I D A D E DE S A O P A U L O

    Escola de Artes, Ciencias e Humanidades

    Roberto Lopes de Carvalho

    Atualizao do Sintetizador de Voz Festival comsuporte a fonemas do Portugus Brasileiro

    So PauloJunho de 2010

  • Universidade de So PauloEscola de Artes, Cincias e Humanidades

    Roberto Lopes de Carvalho

    Atualizao do Sintetizador de Voz Festival comsuporte a fonemas do Portugus Brasileiro

    Monografia para ser apresentada Escolade Artes, Cincias e Humanidades da Uni-versidade de So Paulo, como parte dosrequisitos exigidos para aprovao na disci-plina ACH2017 Projeto Supervisionado oude Graduao I, do curso de Bacharelado emSistemas de Informao.

    Orientador:

    Prof. Dr. Fernando Auil

    So PauloJunho de 2010

  • Catalogao na publicao Bibilioteca da EACH/USP

    Carvalho, Roberto Lopes de

    Atualizao do Sintetizador de Voz Festival com suporte a fonemas do Portu-gus Brasileiro / Roberto Lopes de Carvalho ; orientao de Fernando Auil. So Paulo : Universidade de So Paulo, Escola de Artes, Cincias e Hu-manidades, Junho de 2010.21 p. : il.

    Monografia apresentada para Concluso de Curso de Sistemas de Informa-o Escola de Artes, Cincias e Humanidades da Universidade de SoPaulo.

    1. Sintetizador de voz. 2. Festival. I. Auil, Fernando, orient. II. Ttulo.

    CDD 22.ed. 910.46

  • Universidade de So PauloEscola de Artes, Cincias e Humanidades

    Roberto Lopes de Carvalho

    Atualizao do Sintetizador de Voz Festival comsuporte a fonemas do Portugus Brasileiro

    Monografia para ser apresentada Escolade Artes, Cincias e Humanidades da Uni-versidade de So Paulo, como parte dosrequisitos exigidos para aprovao na disci-plina ACH2017 Projeto Supervisionado oude Graduao I, do curso de Bacharelado emSistemas de Informao.

    Data de Aprovao:

    11 de junho de 2010

    Banca Examinadora:

    Profa Dra Ariane Machado LimaEACH-USP

    So PauloJunho de 2010

  • iAgradecimentos

    Agradeo em primeiro lugar a Deus que me concedeu a vida.

    A minha esposa e filhos pela pacincia, apoio e encorajamento. Sem eles nada disso teria

    sentido algum.

    A minha me que sempre acreditou em mim.

    Ao Prof. Dr. Fernando Auil, que mais do que orientador foi professor no sentido mais

    nobre da palavra.

    Finalmente, mas no por menor merecimento, agradeo aos amigos que, na jornada que

    um curso superior, se juntam a ns nas lutas dirias. Dentre estes, sou particularmente grato ao

    meu amigo Ivanir, grande modelo de perseverana e dedicao, o exemplo que segui.

  • ii

    Glossrio

    API: Acrnimo de Applicattion Programming Interface (Interface de Programao de Apli-

    cativos). Conjunto de rotinas e padres de um software para a utilizao das suas fun-

    cionalidades por programas aplicativos que desejam usar seus servios.

    APT: Acrnimo de Advanced Packaging Tool. Gerenciador de pacotes binrios para o sistema

    operacional GNU/Linux, criado para ser utilizado com a distribuio Debian. Porm,

    outras distribuies derivadas tambm herdaram essa ferramenta.

    CSTR: Acrnimo de Centre for Speech Technology Research. Centro de pesquisas direcionado

    tecnologia de sntese de voz da Universidade de Edimburgo na Esccia.

    cdigo aberto: Vide open-source.

    cdigo-fonte aberto: Vide open-source.

    DFSG: Acrnimo de Debian Free Software Guidelines. Conjunto de normas relativas dis-

    ponibilidade do cdigo-fonte e do tipo de licena de aplicativos, utilizadas no projeto

    Debian para determinar em qual componente do repositrio ser locado o pacote binrio

    correspondente.

    FHS: Acrnimo de Filesystem Hierarchy Standard (Hierarquia Padro do Sistema de Arqui-

    vos). Conjunto de especificaes para a organizao da estrutura de diretrios e locais

    onde devem ser colocados os diferentes tipos de arquivos em um sistema Unix ou similar.

    Free Software Foundation: Fundao para o Software Livre, criada por Richard Mattew Stall-

    man em 1981.

    FreeBSD: Acrnimo de Free Berkley Sofware Distribution. Sistema operacional de cdigo-

    fonte aberto, similar ao Unix, desenvolvido pela Universidade Berkeley da Califrnia.

    FSF: Acrnimo de Free Software Foundation (Fundao para o Software Livre).

    GNU: Embora o termo gnu seja utilizado para denominar duas espcies de antlope da fa-

    mlia Bovidae nativas da frica (Connochaetes gnou e C. taurinus), no contexto do

    presente trabalho, GNU (grafado sempre com maisculas) um acrnimo recursivo de

  • Glossrio iii

    GNUs Not Unix (GNU no Unix). Trata-se de um projeto desenvolvido pela FSF para

    a implementao de um sistema operacional completo atravs de software livre.

    GNU/Linux: Sistema operacional composto dos aplicativos GNU desenvolvidos pela Free

    Software Foundation com a eventual adio de software livre e/ou de cdigo-fonte aberto,

    usando o Linux como kernel, do sistema.

    GPL: Acrnimo de General Public License (Licena Pblica Geral GNU). Licena de distri-

    buio e uso para software idealizada por Richard Mattew Stallman no final dos anos 80

    no mbito do projeto GNU da Free Software Foundation. Trata-se da licena com maior

    utilizao nos projetos de software livre.

    KDE: Acrnimo de K Desktop Environment. Gerenciador de janelas de cdigo-fonte aberto

    que utiliza a biblioteca Qt.

    kernel: Camada de software, mais prxima do hardware, sendo responsvel por gerenciar os

    recursos do sistema computacional como um todo.

    Linux: Clone do kernel do Unix licenciado sob a GPL. O Linux foi iniciado por Linus Torvals

    a partir de 1991-1992 e conta na atualidade com a colaborao de milhares de desenvol-

    vedores no mundo inteiro. A marca Linux propriedade de Linus Torvals.

    LISP: Famlia de linguagens de programao concebida por John McCarthy em 1958. Durante

    as dcadas de 1970 e 1980, foi a principal linguagem da comunidade de inteligncia

    artificial. Seu nome deriva de LISt Processing, onde a lista a estrutura de dados funda-

    mental desta linguagem e o cdigo-fonte pode ser manipulado como qualquer outro tipo

    de dado. Existem diversos dialetos de Lisp, sendo os mais conhecidos o Common Lisp

    e o Scheme.

    LPC: Acrnimo de Linear Predictive Coding (Codificao por Predio Linear). Consiste em

    um mtodo matemtico para realizar estimativas de valores futuros de um sinal digital,

    por exemplo, como uma funo linear de amostras passadas.

    NLP: Acrnimo de Natural Language Processor (Processador de Linguagem Natural). Dispo-

    sitivo cuja tarefa consiste em transformar o contedo textual em informaes fonticas,

    ou seja, converte um texto escrito em voz sintetizada que imita a voz humana. Tambm

    conhecido como TTS.

    OGI: Acrnimo de Oregon Graduate Institute of Science & Technology.

  • Glossrio iv

    open-source: Termo criado pela Open Source Initiative (OSI) que aplica-se de maneira gen-

    rica a qualquer software que respeita basicamente as quatro liberdades definidas pela

    FSF para o software livre.

    programao funcional: Paradigma de programao que considera a computao como uma

    avaliao de funes matemticas.

    programao procedural: Paradigma de programao baseado no conceito de chamadas a

    procedimentos, tambm conhecidos como rotinas, sub-rotinas ou mtodos.

    Scheme: Dialeto da linguagem de programao LISP. Trata-se de uma linguagem multi-paradigma

    que suporta programao funcional e procedural. Foi criada por Guy L. Steele e Gerald

    Jay Sussman no ano de 1975.

    software livre: Qualquer programa de computador que pode ser usado, copiado, estudado e

    redistribudo sem nenhuma restrio, atendendo basicamente aos quatro tipos de liber-

    dades estabelecidos pela Free Software Foundation, a saber: liberdade para (0) executar

    o programa, sem restrio de qualquer propsito; (1) estudar como o programa funciona,

    e adapt-lo para necessidades particulares; (2) redistribuir, inclusive vender, cpias do

    programa; (3) modificar o programa, e distribuir tais modificaes, de modo que toda a

    comunidade se beneficie.

    TTS: Acrnimo de Text-To-Speech. Termo genrico utilizado para o NLP.

    Unix: Sistema operacional portvel, multi-tarefa e multi-usurio originalmente criado por Ken

    Thompson, nos Laboratrios Bell (Bell Labs) da AT&T. Nos primrdios tratva-se de

    software livre, mas logo tornou-se proprietrio. Na atualidade, a marca Unix proprie-

    dade do The Open Group, um consrcio formado por empresas de informtica.

  • vResumo

    Programas sintetizadores de voz tem permitido que deficientes visuais e usurios em geral apri-morem a interao com textos armazenados digitalmente. Entretanto, poucas so as opesdisponveis na linguagem portugus do Brasil e dentre estas no h nenhuma opo para usu-rios de sistemas operacionais de cdigo-fonte aberto. Neste trabalho procuramos integrar umpacote de fonemas do portugus do Brasil ao sintetizador de voz Festival, atualizando o mesmopara a verso mais atual disponibilizada pelos desenvolvedores daquele projeto. Alm disso,espera-se facilitar a distribuio dos programas produzidos atravs da criao de pacotes bi-nrios do Debian colocados em repositrios de software publicamente acessveis, como umamaneira de contribuir para ampliar as opes de acesso a ferramentas de sntese de voz.

    Palavras-Chave: Sintetizador de voz, Festival, interao humano-computador, inclusso digi-tal.

  • vi

    Sumrio

    1 Introduo 1

    2 Objetivos 3

    2.1 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    2.2 Objetivos Especficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    3 Reviso bibliogrfica 4

    3.1 Sntese de Voz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    3.2 Sintetizador Festival . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    3.3 Compiladores: GCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    3.4 Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    3.5 Incluso digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    4 Metodologia 7

    5 Compilao 8

    5.1 Admirvel mundo Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    5.2 Tentativas iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    5.3 Mundana de abordagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    5.4 Fonemas em portugus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    6 Debianizao 13

    6.1 Reunindo as ferramentas e materiais necessrios . . . . . . . . . . . . . . . . . 13

    6.2 Criando patches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

  • Sumrio vii

    6.3 Criando os pacotes binrios do Debian . . . . . . . . . . . . . . . . . . . . . . 14

    7 Resultados 16

    8 Discusso 17

    9 Concluso 18

    9.1 Atividades desenvolvidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    9.2 Divulgao do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    9.3 Perspectivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    Referncias Bibliogrficas 20

  • 11 Introduo

    A capacidade de registrar e comunicar informao uma das grandes conquistas da humanidade

    e o advento da atual era das informaes digitalizadas tornou o processo ainda mais acelerado,

    multiplicando as opes de fontes de informao e ampliando o acesso a essas informaes

    atravs de sites e repositrios virtuais.

    Neste cenrio, como em tantos outros, surge a questo da forma pela qual o homem interage

    com as aplicaes e mquinas que armazenam as informaes e claramente percebe-se que a

    viso e capacidade de leitura so itens quase que fundamentais para o proveito das informaes

    em formato digital, dificultando dessa maneira o acesso dos portadores de deficincia visual e

    limitando de forma geral a maneira como a informao acessada pela exigncia de uma tela

    para exibio da informao textual.

    A pesquisa em produo de sintetizadores de voz apresentou progressos substnciais nas

    ltimas dcadas e, combinada com programas capazes de transformar texto em representao

    fontica, sinaliza uma possibilidade que abre novas portas aos portadores de deficincia visual e

    amplia as possibilidades em geral da interao entre o ser humano e o computador permitindo o

    acesso a informao atravs de programas capazes de tranformar texto em fala (DUTOIT 1997).

    Esses programas chamados de Natural Language Processor ou, mais comumente, de Text-to-

    speech j possuem hoje diversas implementaes, contudo em sua maioria so ferramentas

    proprietrias e com um custo elevado. H alguns programas de cdigo fonte aberto, sendo o

    sintetizador de voz Festival, que um dos objetos de estudo deste trabalho, uma opo com

    APIs (Application Program Interface) para comunicao com diversas outras ferramentas e

    um suporte bastante bom aos idioma ingls e desenvolvido para o sistema operacional Linux

    que tambm cdigo aberto.

    Uma dificuldade caracterstica do nosso pas a carncia de certos programas em idioma

    portugus brasileiro, fato que constitu uma dificuldade para a disseminao do software li-

    vre (EBERLIN 2006). Uma alternativa gratuita para a sistema operacional Windows o pro-

    grama DOSVOX (NCLEO DE COMPUTAO ELETRNICA - UFRJ 2010) criado e man-

  • 1 Introduo 2

    tido pelo Ncleo da Computao Eletrnica da Universidade Federal do Rio de Janeiro que

    nativamente desenvolvido para portugus brasileiro e possi APIs para integrao com outras

    ferramentas de sntese de voz para Windows.

    Para sistemas operacionais de software livre entretanto, no encontramos opes de sinte-

    tizadores de voz com suporte ao portugus brasileiro.

    Motivados ento pela:

    carncia de opes de cdigo fonte aberto para sistemas operacionais livres;

    possibilidade de ampliar o acesso dos deficientes visuais e promover a interao entrehomem e computador;

    e partindo de trabalho prvio que adicionou suporte a fonemas do portugus brasileiro a uma

    verso anterior do programa Festival (STERN 2009), decidimos efetuar o trabalho de atualizar

    a ultima veso do programa, acrescentando o suporte aos fonemas e compilando com a mais

    atual verso do compilador GCC. Dessa maneira almejando tornar o pacote disponvel nos

    repositrios do sistema operacional GNU/Linux distribuido pelo Debian.

  • 32 Objetivos

    2.1 Objetivo Geral

    O objetivo geral deste trabalho o estudo terico e prtico do sintetizador de voz Festival,

    possivelmente contribuindo para adicionar a ferramenta a uma distribuio oficial Debian e

    tornando possvel o acesso a um programa cdigo-fonte aberto em um sistema operacional

    cdigo-fonte aberto, favorecendo a incluso digital de deficientes visuais e a interao entre

    homem e computador.

    2.2 Objetivos Especficos

    Estudo terico do funcionamento de sintetizadores de voz, atravs da literatura existentena rea.

    Estudo terico do funcionamento do compilador GCC e da plataforma GNU/Linux, atra-vs da literatura existente na rea.

    Estudo do cdigo-fonte do Festival com a finalidade de realizar a compilao da versomais atual do programa com uso da verso mais atual do compilador GCC.

    Gerao de pacotes binrios do Debian com o produto final da compilao.

    Entrar em contato com mantenedores do Debian, para possvel incluso dos pacotes bi-nrios gerados no repositrio de distribuio do Debian.

  • 43 Reviso bibliogrfica

    3.1 Sntese de Voz

    Sntese de voz o processo de produo artificial de voz humana e tem sido objeto de estudos

    e pesquisas h sculos, desde o aparato mecnico capaz de produzir o som das vogais, de-

    senvolvido por Kratzenstein em 1779 (LEMMETTY 1999) at as tecnologias mais atuais com

    programas como o Festival.

    Convm a este trabalho descrever brevemente alguns elementos da sntese de voz e mais

    especificamente dos sistemas Text-To-Speech (TTS) que so sistemas capazes de converter texto

    em linguagem natural falada. Este processo permite que as informaes contidas em um texto

    sejam compreendidas por seres humanos apenas atravs da audio o que amplia as possibili-

    dade de interao humano-computador e propicia possibilidades para portadores de deficincia

    visual que sem esse recurso ficariam impedidos de utilizar.

    Um sistema TTS em seu modelo comum composto de algumas caractersticas principais

    que possuem dois processos fundamentais: um anlise do texto e a sntese da voz (TAYLOR 2009).

    A anlise do texto consiste na identificao da forma, das palavras com sua classificao

    traduzindo para uma forma fontica que ento representada atravs da sntese de fala.

    3.2 Sintetizador Festival

    O sintetizador de voz Festival - The Festival Speech Synthesis System, foi desenvolvido pelo

    Centre for Speech Technology Research (CSTR) da universidade de Edimburgo consiste em um

    framework para construo de sistemas sintetizadores de voz. Sua proposta inicial justamente

    permitir multiplas linguagens e j possu um excelente conjunto de vozes e fonemas para ingls.

    Possu diversas APIs para integrao com sistema operacional, comandos interpretados em

    Scheme e bibliotecas de C++ (BLACK, TAYLOR & CALEY 1999).

  • 3.3 Compiladores: GCC 5

    3.3 Compiladores: GCC

    Compiladores so programas capazes de transformar cdigo-fonte produzido, em geral, por se-

    res humanos para "cdigo de mquina". Sua tarefa geral seria ler uma fonte em uma linguagem

    e traduzir essa fonte para uma outra linguagem (BORNAT 1979).

    O GNU Compiler Collection (GCC) um programa de cdigo-fonte livre desenvolvido e

    mantido pelo projeto GNU que hoje suportado e patrocinado pela Free Software Foundation

    (FSF). Possu front-end para diversas linguagens, bem como bibliotecas de funes para as

    mesmas. Est presente nos repositrios de todas as distribuies GNU/Linux.

    3.4 Debian

    O Debian um sistema operacional de cdigo-fonte aberto que usa o Linux como kernel do

    sistema e uma grande quantidade de aplicaes do projeto GNU, sendo que hoje os repositrios

    de aplicativos do Debian j contam com mais de 25.000 (vinte e cinco mil) pacotes de binrios

    de software, todos de cdigo-fonte aberto e com licenas de uso e distribuio livres.

    O nome do projeto, Debian, deriva da composio dos nomes de seu criador Ian Murdock

    e o da sua esposa Debra. Ian deu nicio ao projeto em 1993, comeando com um pequeno

    grupo de desenvolvedores, que com o passar do tempo se expandiu e hoje forma uma grande

    comunidade de desenvolvedores, todos eles voluntrios, e usurios.

    Com uma politca bastante criteriosa para aceitar acrscimos aos repositrios, o Debian

    considerado uma das distribuies mais estveis e confiveis de GNU/Linux justamente por exi-

    gir que os binrios desenvolvidos para o sistema sigam regras definidas por exemplo no File Hi-

    erarchy Standard(FHS) (FILESYSTEM HIERARCHY STANDARD GROUP 2004), que con-

    site de um conjunto de especificaes para a organizao da estrutura de diretrios para alocao

    dos diferentes tipos de arquivos em um sistema Unix ou similar.

    O Debian possu ainda uma poltica prpria para o desenvolvimento, empacotamento e dis-

    tribuio de aplicativos. Essas normas estam contidas em um manual conhecido como Debian

    Policy Manual (THE DEBIAN POLICY MAILING LIST 2010).

  • 3.5 Incluso digital 6

    3.5 Incluso digital

    Segundo pesquisa do Instituto Brasileiro de Geografia e Estatstica (IBGE) cerca de 24,5 mi-

    lhes de brasileiros, aproximadamente 15% da populao do pas, possuem alguma forma de

    deficincia fsica. No h uma estimativa precisa de quantos desses deficientes possuem acesso

    a computadores e a internet, mas se nos basearmos no nmero total de brasileiros com acesso a

    internet, que ainda segundo o IBGE representa cerca 32,1 milhes de pessoas, sendo que desse

    nmero a mdia de idade era de 28 anos e com 10,7 anos de estudo, temos claramente um qua-

    dro que deixa evidente a dificuldade em facilitar o acesso a recursos de informtica e tecnologia

    para deficientes.

    Mesmo nas pginas em geral da Internet no so encontrados muitos sites com opes que

    favoream a acessibilidade, a despeito de iniciativas como a da World Wide Web Consortium

    (W3C), que est promovendo atravs de um projeto chamado Web Accessibility Initiative tu-

    toriais e artigos para enfatizar a importncia, ensinar os mtodos e testar a acessibilidade em

    sites (WORLD WIDE WEB CONSORTIUM).

    Neste cenrio de opes escassas ainda mais escassas so as opes gratuitas e em portu-

    gus, fato que constitui um obstculo para a difuso do software livre (EBERLIN 2006).

  • 74 Metodologia

    Adotamos como metodologia de trabalho duas frentes principais, sendo uma delas terica e a

    outra de ordem prtica. Na teoria buscamos informaes sobre sntese de voz e compiladores,

    e ainda realizamos extensas pesquisas tcnicas com relao as tecnologias que foram utilizadas

    ou que fizeram parte deste trabalho, quais sejam:

    Sistema operacional GNU/Linux Debian 5.0 lenny.

    Filesystem Hierarchy Standard (FHS), conjunto de especificaes para a organizao daestrutura de diretrios (FILESYSTEM HIERARCHY STANDARD GROUP 2004).

    Sintetizador de voz Festival.

    Mdulo sintetizador LPC residual da OGI.

    Compilador GCC.

    Bibliotecas e programas do APT (Advanced Packaging Tool). Em particular, o programasdpkg, dpkg-source e apt-get.

    Na prtica realizamos atividade de compilao do cdigo-fonte da verso 1.96 do programa

    Festival com a verso mais atual do GCC e ainda realizamos a criao de pacotes binrios do

    Debian.

  • 85 Compilao

    5.1 Admirvel mundo Linux

    Para realizao dos trabalhos e, conseguinte, alcance dos objetivos propostos um dos passos

    iniciais consistiu para mim no aprendizado de utilizao e configurao de um sistema Linux,

    sendo que no possuia experincia nem em sua instalao e to pouco em sua configurao.

    Uma grata surpresa foi a riqueza de documentao e material destinado a iniciantes que encon-

    trei na internet com especial destaque para o site do Debian:

    http://www.debian.org

    Do ponto de vista de um usurio de sistemas Windows alguns pontos que em especial se

    destacam so as questes de diviso da organizao dos arquivos de acordo com a permisso

    do usurio e o acesso restrito para um superusurio root para atividades relativas ao sistema

    operacional em si.

    A configurao e o uso de aplicaes em linha de comando causaram uma certa estranheza

    inicial que no entanto foi rapidamente superada graas a riqueza de docuentao e as inmeras

    facilidades proporcionadas.

    A instalao e atualizao de programas e do prprio sistema operacional atravs de coman-

    dos apt-get acrescentam ainda uma dimenso obviamente prtica de organizao e aquisio

    dos programas. Ainda a estrutura de compartilhamento de bibliotecas favorecem a economici-

    dade.

    Para os trabalhos de compilao utilizamos o sistema operacional GNU/Linux Debian 5.0

    lenny.

  • 5.2 Tentativas iniciais 9

    5.2 Tentativas iniciais

    Inicialmente fizemos o download do cdigo-fonte do Festival do site FestVox mantido pelo

    Language Technologies Institute da Universidade Carnegie Mellon:

    http://festvox.org/packed/festival/latest/

    Os arquivos contendo o cdigo-fonte so distribudos compactados em formato .tar.gz e

    os arquivos baixados foram os seguintes:

    festival-1.96-beta.tar: Ncleo do Sistema de Sntese de Voz Festival. Contmainda exemplos, arquivos de configurao, documentao e bibliotecas.

    festlex_CMU.tar.gz: Dicionrio de fonemas em ingls americano e um documentocom as regras de som baseadas no CMUDICT 0.4.

    festlex_OALD.tar.gz: Dicionrio do ingls britnico e um documento com as regrasde som derivadas do Oxford Advanced Learners Dictionary of Current English, restrito

    somente para uso no comercial.

    festlex_POSLEX.tar.gz: Dicionrio, wsj.wp39.poslexR, e um n-grama para a iden-tificao da voz inglesa, wsj.wp39.tri.ngrambin.

    festvox_kallpc16k.tar.gz: Sintetizador de difones correspondentes ao ingls ame-ricano.

    festvox_kedlpc16k.tar.gz: Sintetizador de difones correspondentes ao ingls ame-ricano.

    festvox_rablpc16k.tar.gz: Sintetizador de difones correspondentes ao ingls brit-nico.

    speech_tools-1.2.96-beta.tar.gz: Biblioteca de ferramentas de voz da Universi-dade de Edimburgo. Consiste numa coleo de classes C++, funes e programas relacio-

    nados com a manipulao de todo tipo de objetos utilizados para o processamento da voz.

    Inclui suporte para a leitura e escrita de formas de onda e arquivos de diversos formatos,

    e tambm permite a converso entre tipos.

    Em seguida efetuamos o download do sintetizador LPC residual do Center for Spoken Lan-

    guage Understanding (CLSU) mantido pelo Oregon Graduate Institute of Science and Techno-

    logy (OGI) em seu site:

  • 5.3 Mundana de abordagem 10

    https://www.cslu.ogi.edu/tts/download/data/OGIresLPC-2.2.tar.gz

    Iniciamos ento as atividades de compilao propriamente ditas com a verso 1.96 do

    Festival e com a verso 4.01 do gcc fazendo uso dos seguintes comandos:

    cd /tts/speech_tools

    ./configure

    make

    Em seguida, fazemos o mesmo com o Festival propriamente dito:

    cd /tts/festival

    ./configure

    make

    Nos deparamos com os primeiros erros de compilao que, descobrimos numa lista de

    discusso do KDE, poderiam ser causados por certas incompatibilidades entre o cdigo-fonte

    do Festival 1.96 e o GCC verso 4.01. Aplicamos um patch de correo localizado no site da

    lista de dicusso do KDE:

    http://lists.kde.org/?l=kde-accessibility&m=112757271022463&w=2

    com o comando que se segue:

    patch -d ../tts/speech_tools -p1 < festbuild-2.patch

    Os erros de compilao contudo persistiram e aps intensa pesquisa localizamos uma suge-

    to de que poderia tratar-se de um problema na verso do compilador em uma lista de discusso

    sobre Festival:

    http://lists.berlios.de/pipermail/festlang-talk/2009-May/001592.html

    5.3 Mundana de abordagem

    Neste ponto optamos por uma estratgia mais radical e decidimos partir para a ltima verso

    estvel do compilador, que na ocasio era a 4.43. Est deciso foi radical, pois estaramos

  • 5.4 Fonemas em portugus 11

    passando a uma verso do compilador que no faz parte da distribuio estvel do Debian

    Lenny, mas apenas encontrado na verso de testes Squeeze.

    Atualizamos ento os arquivos sources.list que no Debian servem para listar os en-

    dereos para download de pacotes binrios ou cdigo-fonte via a ferramenta de instalao e

    atualizao de programas denominada apt-get.

    Agora com a verso 4.43 do compilador GCC removemos o patch previamente aplicado

    sobre o Festival com o seguinte comando:

    patch -d ../tts/speech_tools -p1 -R < festbuild-2.patch

    Uma nova tentativa de compilao resultou ento em um erro diferente que tentamos pon-

    tualmente superar com uso da opo -fpermissive que permite realizar a compilao ig-

    norando certas verificaes. Constatamos ento que o mesmo erro ocorria em diversos dos

    arquivos no cdigo-fonte do Festival e do Speech Tools e ento decidimos editar o arquivo

    /tts/speech_tools/config/config para aplicar a citada opo -fpermissive a todos os

    fontes que seriam compilados com o acrscimo da seguinte linha:

    CC_OTHER_FLAGS += -fpermissive

    Com isso conseguimos realizar a compilao dos fontes do Festival e do Speech Tools,

    mas ainda sem os fonemas em portugus do Brasil. Para testar a compilao utilizamos os

    comandos:

    festival

    (SayText "hello world")

    5.4 Fonemas em portugus

    Os fonemas em portugus do Brasil foram desenvolvidos como parte do projeto Spooltech, da

    Universidade Federal do Rio Grande do Sul (FRANZEN & BARONE 2003), (NETO et al. 2008),

    e constituem uma coleo de arquivos que foram acrescentados aos diretrios do Festival para

    compilao. Realizamos nova compilao que resultou bem sucedida, entretanto a execuo do

    programa apresentou problemas ao tentarmos selecionar voz em portugus:

    festival

    (voice_aga_diphone)

  • 5.4 Fonemas em portugus 12

    Examinando o cdigo-fonte constatamos que o problema ocorria em um programa do m-

    dulo sintetizador LPC residual da OGI. Mais precisamente, localizado no arquivo:

    /tts/festival/src/modules/OGIdbase/OGIdbase_scm.cc

    Editamos ento algumas linhas desse arquivo, ficando finalmente como mostrado abaixo:

    1 new_db = new OGIresLPC_db;

    /*

    3 //cerr

  • 13

    6 Debianizao

    6.1 Reunindo as ferramentas e materiais necessrios

    Para dar nicio as atividade de criao dos pacotes binrios do Debian que simplificam a insta-

    lao e remoo de programas e permitem a distribuio atravs dos repositrios do Debian ou

    similares, so necessrios alguns elementos:

    Aplicao dpkg utilizada para criao (e gerenciamento) dos pacotes.

    Adequao para a instalao dos executveis e a documentao segundo as especificaesdo FHS (FILESYSTEM HIERARCHY STANDARD GROUP 2004).

    Observncia das normas contidas no Debian Policy Manual que especifica as regras paracriao de aplicaes e sua integrao como sistema operacional. Acrescenta ainda algu-

    mas excees as regras contidas no FHS (THE DEBIAN POLICY MAILING LIST 2010).

    Diretrio debian, que contm um subdiretrio patches para alocao dos arquivos quesero aplicados ao cdigo-fonte antes da compilao e outros programas e arquivos ne-

    cessrios para, por exemplo, gerar a documentao.

    A organizao de acordo com o FHS permite um maior controle e organizao do sistema

    operacional, alm de permitir o reuso de bibliotecas comuns a diversas aplicaes.

    Procedemos ainda ao download do cdigo-fonte do Festival e do Speech Tools do reposit-

    rio do Debian fazendo uso dos comandos:

    apt-get source festival

    apt-get source speech-tool

    apt-get build-dep festival

    apt-get build-depspeech-tools

  • 6.2 Criando patches 14

    6.2 Criando patches

    Criamos uma srie de patches que devem ser aplicados ao cdigo-fonte antes da compilao

    com o objetivo de efetuar as correes necessrias. Mais precisamente, o cdigo foi modificado

    para:

    Acrescentar o mdulo sintetizador LPC residual da OGI.

    Acrescentar os fonemas em portugus do Brasil.

    Instalar o software produzido (binrios executveis, arquivos de configurao, documen-tao, etc.) de acordo com o FHS.

    Criamos ainda neste processo uma outra srie depatches para permitir a interao com o

    Festival atravs de outras formas alm do modo interativo que pode ser utilizado por padro do

    programa. Com isso abrimos possibilidade para interao com o aplicativo atravs de:

    Leitura de arquivos contendo texto atravs do comando:

    festival -tts -language brazilian_portuguese nomedoarquivo.txt

    Alternativamente a um arquivo de texto, a leitura dos dados de entrada poderia ser feitaatravs da entrada padro, mais conhecida como STDIN, por exemplo, atravs do co-

    mando:

    echo "Ol mundo" | festival -tts -language brazilian_portuguese

    Utilizao em modo interativo, ou atravs de scripts, como no seguinte exemplo:1 #!/usr/bin/festival --batch

    (voice_aga_diphone)

    3 (SayText "Ola Mundo !")

    Todos os patches produzidos foram colocados no diretrio debian/patches/ogi.

    6.3 Criando os pacotes binrios do Debian

    Finalmente com todos os patches e arquivos em ordem pudemos realizar nova compilao e

    criao dos pacotes atravs do comando:

  • 6.3 Criando os pacotes binrios do Debian 15

    dpkg-buildpackage -us -uc -rfakeroot -b

    Com este comando criamos ento dois pacotes binrios do Debian:

    festival-ogi_1.96~beta-1_i386.deb: Sintetizador Festival modificado para uso como mdulo LPC residual da OGI.

    festvox-aga_1.96~beta-2_i386.deb: Base de dados e fonemas necessrios para im-plementar o suporte ao idioma portugus do Brasil.

    Realizamos ento testes instalando e desinstalando os pacotes em reiteradas oportunidades

    e em diferentes computadores cujo sistema operacional era o Debian e pudemos constatar sua

    funcionalidade.

  • 16

    7 Resultados

    Os resultados de ordem prtica e mais facilmente perceptveis foram evidentemente os binrios

    compilados e empacotados funcionando adequadamente. Esse xito nos permite tentar junto

    aos mantenedores do Debian a incluso dos fontes na prxima distribuio estvel do Debian,

    mas ainda em estgio de testes, denominada Squeeze.

    Alm de atingirmos os objetivos inicialmente propostos, conseguimos ainda acrescentar

    recursos para utilizao dos comandos do programa atravs da linha de comando, leitura de

    arquivos de texto e interao com scripts abrindo a possibilidade para utilizaes criativas e

    integrao dos binrios com outras aplizaes, criando no apenas uma distribuio til para o

    usurio final, mas tambm interessante como ponto de partida para o desenvolvimento futuro

    de aplicaes que faam uso de sintetizadores de voz.

    Com relao a distribuio dos binrios e do cdigo fonte produzido neste trabalho criamos

    um projeto no SourceForge.NET, que hospeda diversos projetos de programas distribudos sob

    variadas formas de licenciamento e para diversas plataformas. O projeto pode ser acessado no

    seguinte endereo:

    https://sourceforge.net/projects/festivalptbr/

    Neste repositrio h a ainda a possibilidade do controle de verso, customizao da pgina do

    projeto e outras possibilidades como o acrscimo de documentos e manuais que pretendemos

    em breve acrescentar o repositrio para facilitar a compreenso por parte de interessados quer

    sejam usurios ou desenvolvedores que se interessem em contribuir de alguma maneira para o

    desenvolvimento ulterior do projeto.

    Ainda como resultados considero o aprendizado no apenas terico dos sintetizadores de

    voz e da plataforma GNU/Linux, mas tambm o conhecimento prtico de uso e manipulao

    destas ferramentas, com suas dificuldades e surpresas que registramos ao longo desta monogra-

    fia.

  • 17

    8 Discusso

    Foi contatado o mantenedor do Debian:

    Kartik Mistry

    que o prprio mantenedor do Festival junto ao projeto Debian. Ele mostrou-se receptivo ao

    nosso trabalho, mas com relao incluso do software produzido no repositrio do Debian,

    no temos ainda nenhum parecer conclusivo no momento.

    Foram alcanados os resultados esperados em termos do desenvolvimento e adaptao dos

    programas, porm a dificuldade em distribuir os binrios evidencia alguns pontos j citados com

    relao a questo da divulgao das ferramentas de cdigo fonte aberto e sua adoo por parte

    dos usurios, deficientes visuais ou no.

    Durante a pesquisa pudemos verificar que h uma movimentao por parte dos rgos go-

    vernamentais no sentido de promover o uso do software livre, como pode ser visto no portal

    http://inclusaodigital.gov.br que enumera diversas aes sociais que viso a incluso

    digital dos cidados, porm os dados do IBGE evidenciam claramente que h um longo caminho

    a ser percorrido para alcanar um nmero significativo da populao.

    Pudemos ainda citar o programa DOSVOX que constitui uma excelente alternativa em por-

    tugus do Brasil para usurios de sistema operacional Windows e a iniciativa promovida pelo

    W3C para promover a criao e adaptao de sites para assegurar acessibilidade, mas ainda h

    muitas questes a serem exploradas para uma eficaz utilizao das ferramentas existentes para

    aprimoramento da interao entre o humano e computador e uma das que nos parece a mais

    destacada est na criao de mecanismos de divulgao que sejam do conhecimento do grande

    pblico e, talvez, aqui coubesse uma ao mais forte de entidades do governo nesse sentido.

    Ainda h a questo de que a voz obtida com o pacote de fonemas que utilizamos ainda

    ser mecanizada e estar longe da qualidade obtida com certas ferramentas pagas disponveis no

    mercado. Porm, qualquer melhora dos programas nesse sentido certamente foge do objetivo

    inicial do presente trabalho.

  • 18

    9 Concluso

    9.1 Atividades desenvolvidas

    Partimos da pesquisa terica sobre a sntese de voz humana e sua implementao computacio-

    nal (sintetizadores de voz) com particular nfase no Festival, dado que trata-se de um projeto de

    cdigo-fonte aberto, ainda investigando sua utilizao e integrao com uma ferramenta man-

    tida pela OGI, integrando ainda com um pacote de fonemas em portugus do Brasil.

    De nicio seguimos os passos j realizados em trabalho prvio, focado numa verso anterior

    do Festival e do compilador GCC (STERN 2009) e trouxemos a um resultado funcional com

    as verses mais atuais de ambos.

    A utilizao da linguagem portugus do Brasil foi acrescida e pode ser utilizada tanto em

    linha de comando quanto em modo interativo.

    Criamos pacotes binrios e entramos em contato com os mantenedores do Debian, com o

    objetivo de que este trabalho seja divulgado e possa favorecer deficientes visuais ou outros usu-

    rios e desenvolvedores que estejam engajados com as questes possibilitadas por essa forma de

    interao entre humano e computador.

    9.2 Divulgao do trabalho

    Alm do desenvolvimento do projeto, e para no depender da boa vontade dos voluntrios do

    projeto Debian, para divulgar os programas produzidos no presente trabalho junto com seu

    cdigo-fonte, preparamos um repositrio no SourceForge.NET que pode ser acessado no se-

    guinte endereo:

    https://sourceforge.net/projects/festivalptbr/

    O repositrio criado ser utilizado tambm como uma maneira de dar continuidade ao pro-

    jeto original de desenvolvimento, cujo objetivo inicial acredita-se tenha sido plenamente atin-

  • 9.3 Perspectivas 19

    gido.

    9.3 Perspectivas

    O projeto original sucetvel de ser aprimorado atravs de atividades como por exemplo:

    Melhoria dos fonemas do portugus do Brasil.

    Acrscimo de vozes menos mecanizadas e novas opes de voz.

    Integrao atravs de interfaces ou scripts do sistema operacional com aplicaes querecebam comando de voz, para ampliar a capacidade de interao.

    Realizao de testes e adaptaes necessrias para funcionamento em outras distribuiesGNU/Linux.

  • 20

    Referncias Bibliogrficas

    BLACK, A. W.; TAYLOR, P.; CALEY, R. The Festival Speech Synthesis System. Systemdocumentation. 1.4. ed. Site, 1999. Disponvel em: . Acesso em: 11 abr. 2010. 3.2

    BORNAT, R. Understanding and Writing Compilers. New York: Macmillan Press Ltd.,1979. 3.3

    DUTOIT, T. High-Quality Text-to-Speech Synthesis: an Overview. Journal of Electrical &Electronics Engineering. Australia: Special Issue on Speech Recognition and Synthesis,1997. 25-37 p. Disponvel em: . Acesso em: 11 mar. 2010. 1

    EBERLIN, S. O Software Livre como Alternativa para a Incluso Digital do DeficienteVisual. Campinas - SP: Unicamp, 2006. 1, 3.5

    FILESYSTEM HIERARCHY STANDARD GROUP. Filesystem Hierarchy Standard. 2.3.ed. Site, 2004. Disponvel em: . Acesso em: 11 mar. 2010. 3.4, 4, 6.1

    FRANZEN, E.; BARONE, D. A. C. Automatic Discovery of Brazilian Portuguese Letterto Phoneme Conversion Rules through Genetic Programming. Berlin / Heidelberg:Springer, 2003. 62-65 p. Disponvel em: . Acesso em: 11 mar. 2010. 5.4

    LEMMETTY, S. Review of Speech Synthesis Technology. Helsinki: Helsinki University ofTechnology, 1999. Disponvel em: . Acesso em: 11 mar. 2010. 3.1

    NETO, N. et al. Spoltech and OGI-22 Baseline Systems for Speech Recognition inBrazilian Portuguese. Berlin / Heidelberg: Springer, 2008. 256-259 p. Disponvel em:. Acesso em: 11mar. 2010. 5.4

    NCLEO DE COMPUTAO ELETRNICA - UFRJ. PROJETO DOSVOX. 2010. Site.Disponvel em: . Acesso em: 11 mar.2010. 1

    STERN, I. R. Suporte para Fonemas do Portugus Brasileiro no Sintetizador de VozFestival. So Paulo: Escola de Artes, Cincias e Humanidades da Universidade de SoPaulo, 2009. Monografia. 1, 9.1

    TAYLOR, P. Text - to - Speech Synthesis. Cambridge: Cambridge University Press, 2009. 3.1

  • Referncias Bibliogrficas 21

    THE DEBIAN POLICY MAILING LIST. Debian Policy Manual. 3.8.4.0. ed. Site, 2010.Disponvel em: .Acesso em: 11 abr. 2010. 3.4, 6.1

    WORLD WIDE WEB CONSORTIUM. Web Accessibility Initiative. Site. Disponvel em:. Acesso em: 11 abr. 2010. 3.5

    IntroduoObjetivosObjetivo GeralObjetivos Especficos

    Reviso bibliogrficaSntese de VozSintetizador FestivalCompiladores: GCCDebianIncluso digital

    MetodologiaCompilaoAdmirvel mundo LinuxTentativas iniciaisMundana de abordagemFonemas em portugus

    DebianizaoReunindo as ferramentas e materiais necessriosCriando patchesCriando os pacotes binrios do Debian

    ResultadosDiscussoConclusoAtividades desenvolvidasDivulgao do trabalhoPerspectivas

    Referncias Bibliogrficas


Recommended