Fa poc vaig explicar [[../|com fer servir les veus catalanes a Ubuntu]]. En aquest temps FestCAT ha fet forces progressos: ja hi ha diverses veus de molta qualitat (clunits) i un repositori per a Ubuntu, que facilita la instal·lació. Avui explicaré com fer servir les veus amb Python, per fer els nostres programes més humans. Com que només fa uns mesos que faig servir Python, segur que trobareu millors formes de fer-ho, així que us animo a deixar els vostres comentaris. En tot cas funciona!. Aquest és el mòdul que s'encarrega de que Festival tingui la codificació que necessita, i només cal importar-lo aixÍ: {{{ from xerra import diguesCadena }}} i cridar-lo així: {{{ diguesCadena(cadena) }}} Codi del mòdul: {{{ #!/usr/bin/python #-*- coding: UTF-8 -*- __doc__="""Funcions de veu amb Festival """ __author__ = "Paco Rivière (http://pacoriviere.cat)" __version__ = "0.1" __date__ = "21 desembre 2009" __copyright__ = "Copyright (c) 2009 Paco Rivière" __license__ = "Python" ######################################## # xerra.py # ######################################## import os, sys #Si echo és cert l'ordre es copia a pantalla: echo=False Debug=False #llengua llengua='catalan' # cadena del tub de veu: motor='|festival --tts --language '+llengua def diguesCadena(cadena=u'Això és una prova'): """Llegeix una cadena en veu alta cadena: string Torna: int (0-éxit 1-fracàs) """ if cadena=='': cadena=u'No hi ha res a llegir' try: ordre=u'echo \'%s\' %s' % (cadena, motor) ordre=ordre.encode('latin-1') if echo:print ordre.decode('latin-1') err=os.system(ordre) return err except: if Debug: print "Hi ha hagut un error:", sys.exc_info()[0] print " La ordre utilitzada ha estat:" print ordre.decode('latin-1') raise print " Hi hagut un problema en llegir la cadena:", cadena.decode('latin-1') raw_input(" Premeu Intro per continuar.") return 1 if __name__ == '__main__': print __doc__ err=diguesCadena() print 'Retorn:', err }}} Crèdits: [[https://launchpad.net/~zeehio|Sergi Oller]], [[http://pacoriviere.cat/|PacoRivière]] http://galindaines.blogspot.com/ ---- CategoryTutorialsEnCatala