FestCat / festival-ca

FestCat extends the Festival Speech System providing text to speech support to the Catalan language
http://festcat.talp.cat/download.php
Other
6 stars 1 forks source link

Adaptar les veus a l'Flite #4

Open jmontane opened 10 years ago

jmontane commented 10 years ago

Hola, seria molt interessant poder gaudir de les veus catalanes del projecte Festcat també a l'Flite (festival-litle)[1]. Això permetria poder gaudir de veus catalanes als dispositius amb Android [2], ja que Google no incorpora el català al seu motor TTS, :(

Com ho veieu?

[1] http://www.festvox.org/flite/ [2] https://play.google.com/store/apps/details?id=edu.cmu.cs.speech.tts.flite

zeehio commented 10 years ago

Hola,

Estic d'acord en què seria molt interessant. Tanmateix és molta feina i no tinc temps per fer-ho ara per ara. Crec que seria factible i atractiu presentar aquest tema com a projecte final de carrera per algun estudiant (tot i que no sé si és molta/poca feina per un PFC). Intentaré parlar amb el Toni Bonafonte, que va dirigir el projecte FestCat, per si està interessat en dirigir un alumne (si cal amb la meva ajuda en tant que pugui).

Objectiu

Publicar veus catalanes del projecte FestCat a Flite en la seva versió d'escriptori i la versió Android, a fi d'aconseguir síntesi de veu lliure i d'alta qualitat en dispositius mòbils. Publicar el codi font de la feina feta és fonamental per assolir aquests objectius.

Proposta de passos a seguir

  1. Aprenentatge
    1. Familiaritzar-se amb la suite Festival i amb FestCat.
    2. Familiaritzar-se amb Flite i amb el funcionament de les veus angleses a Flite. Identificar el funcionament dels diferents mòduls que permeten analitzar text i convertir-lo a veu.
  2. Donar suport lingüístic a flite en català
  3. Crear un model de veu clustergen per fer síntesi.
  4. Publicar els resultats i col·laborar amb els desenvolupadors de Flite i Flite-Android per integrar els canvis en la seva aplicació. Disponible a Google App Store i/o f-droid.

2. Suport lingüístic a flite

Aquesta és la tasca més complicada. L'objectiu és que flite sigui capaç de, donat un text en català, generar la transcripció fonètica correcta i les etiquetes necessàries per tal que el mòdul clustergen de flite pugui sintetitzar veu. A FestCat fem servir una sèrie de mòduls que caldria veure si poden portar-se a Flite o com es podrien implementar, amb un cost computacional baix.

Festival utilitza un llenguatge interpretat anomenat "scheme" per fer bona part d'aquesta feina. A FestCat fem servir:

3. Model de veu clustergen

Això hauria de ser relativament senzill. A FestCat ja vam crear models de veus HTS i models de veus Clunits. Clunits i HTS són dues aproximacions diferents a la síntesi de veu: la primera es basa en concatenar segments de gravacions i la segona en crear uns models estadístics que representin cada fonema contextualitzat. Pel que he llegit, Flite fa servir clustergen, que és un mètode més aviat proper a HTS.

A la web Statistical Parametric Synthesis es mostra una guia amb passos a fer. Bastants d'aquests passos són comuns als altres tipus de veu, de manera que no hauria de ser difícil completar aquesta tasca.

Material necessari

Tot el material necessari (diccionaris, gravacions, etiquetes de gravacions...) per elaborar aquestes tasques està disponible al web de FestCat i a aquest repositori

zeehio commented 10 years ago

Algú ho ha fet per Austrian German voices i dóna bones indicacions: http://sourceforge.net/p/at-flite/wiki/AddingNewLanguage/