Provide a general method for adding additional languages in festival This general method in this patch was written by Sergio Oller and merged with earlier patches of lib_languages.scm and russianpatch.diff. The russianpatch.diff was written by Sergey B Kirpichev. The merging was performed by Peter Drysdale. --- festival-2.1~release.orig/src/main/festival_main.cc +++ festival-2.1~release/src/main/festival_main.cc @@ -105,7 +105,7 @@ static void festival_main(int argc, char " are printed (default if stdin not a tty)\n"+ "--language \n"+ " Run in named language, default is\n"+ - " english, spanish and welsh are available\n"+ + " english, spanish, russian, welsh and others are available\n"+ "--server Run in server mode waiting for clients\n"+ " of server_port (1314)\n"+ "--script \n"+ --- festival-2.1~release.orig/lib/languages.scm +++ festival-2.1~release/lib/languages.scm @@ -2,7 +2,7 @@ ;;; ;; ;;; Centre for Speech Technology Research ;; ;;; University of Edinburgh, UK ;; -;;; Copyright (c) 1996,1997 ;; +;;; Copyright (c) 1996,2010 ;; ;;; All Rights Reserved. ;; ;;; ;; ;;; Permission is hereby granted, free of charge, to use and distribute ;; @@ -31,90 +31,145 @@ ;;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; -;;; Specification of voices and some major choices of synthesis +;;; Author: Sergio Oller +;;; Date: January 2010 ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; -;;; This should use some sort of database description for voices so -;;; new voices will become automatically available. +;;; Language definitions, now it works similar to voice definitions. ;;; -(define (language_british_english) -"(language_british_english) -Set up language parameters for British English." - (require 'voices) - ;; Will get more elaborate, with different choices of voices in language - - (set! male1 voice_rab_diphone) - (set! male2 voice_don_diphone) - (if (symbol-bound? 'voice_gsw_diphone) - (set! male3 voice_gsw_diphone)) - (if (symbol-bound? 'voice_gsw_450) - (set! male4 voice_gsw_450)) - (male1) - (Parameter.set 'Language 'britishenglish) -) - -(define (language_american_english) -"(language_american_english) -Set up language parameters for Aemerican English." - - (if (symbol-bound? 'voice_kal_diphone) - (set! female1 voice_kal_diphone)) - (set! male1 voice_ked_diphone) +(defvar system-language-path '("/usr/share/festival/languages/")) - (male1) - (Parameter.set 'Language 'americanenglish) +(defvar language-path + (remove-duplicates + (append (mapcar (lambda (d) (path-append d "languages/")) load-path) + (mapcar (lambda (d) (path-as-directory d)) system-language-path) + )) + + "language-path + List of places to look for languages. If not set it is initialised from + load-path by appending \"languages/\" to each directory with + system-language-path appended.") + +(defvar language-locations () + "language-locations + Association list recording where languages were found.") + +(defvar language-location-trace nil + "language-location-trace + Set t to print language locations as they are found") + +(defvar Language_aliases nil + "Internal variable containing an association of language name + aliases such as english-> british_english.") + +(define (language.names.add language aliases) +"(language.names.add LANGUAGE ALIASES) +Describe a language to the systen. LANGUAGE should be atomic name, that +conventionally will have language_ prepended to name the basic selection +function. ALIASES is a list of names for that language." + (let (alias nil) + + (while aliases + (set! alias (car aliases)) + (cond ( (not (assoc alias Language_aliases) nil) + (set! Language_aliases (cons (cons alias language) Language_aliases)) + ) + (t + (set-cdr! (assoc alias Language_aliases) language) + ) + ) + (set! aliases (cdr aliases)) + ) + ) ) -(define (language_scots_gaelic) -"(language_scots_gaelic) -Set up language parameters for Scots Gaelic." - (error "Scots Gaelic not yet supported.") - - (Parameter.set 'Language 'scotsgaelic) +(define (language-location name dir doc) + "(language-location NAME DIR DOCSTRING) + Record the location of a language. Called for each language found on language-path. + Can be called in site-init or .festivalrc for additional languages which + exist elsewhere." + (let ((func_name (intern name)) + ) + + (set! name (intern name)) + (set! language-locations (cons (cons name dir) language-locations)) + (eval (list 'autoload func_name dir doc)) + (if language-location-trace + (format t "Language: %s %s.scm\n" name dir) + ) + ) + ) + + +(define (language.list) +"(language.list) +List of all (potential) languages in the system. This checks the language-location +list of potential languages found be scanning the language-path at start up time." + (mapcar car Language_aliases)) + +(define (language.select name) +"(language.select LANG) +Call function to set up language LANG. This is normally done by +prepending language_ to LANG and call it as a function." + (set! lang (cdr(assoc name Language_aliases))) + (if (string-equal lang nil) + (set! lang name) + ) + (cond + ((boundp (intern(string-append "language_" lang))) ;;if function "language_lang" exists, evaluate it + (eval (list (intern (string-append "language_" lang)))) + ) + ((string-matches lang "klingon") + (print "Klingon is not supported yet, using English:") + (language.select 'english) + ) + (t ;;else, print a message with available languages + (print "Language not installed. The installed languages are:") + (language.list) + ) + ) +nil ) -(define (language_welsh) -"(language_welsh) -Set up language parameters for Welsh." - (set! male1 voice_welsh_hl) - - (male1) - (Parameter.set 'Language 'welsh) -) +(define (search-for-languages) + "(search-for-languages) + Search down language-path to locate languages." + + (let ((dirs language-path) + (dir nil) + languages language + name + ) + (while dirs + (set! dir (car dirs)) + (setq languages (directory-entries dir t)) + (while languages + (set! language (car languages)) + (if (string-matches language "language_.*scm$") + (begin + (load (path-append dir language)) + (language-location (path-basename language) (path-append dir (path-basename language)) "language found") + ) + ) + (set! languages (cdr languages)) + ) + (set! dirs (cdr dirs)) + ) + ) + ) -(define (language_castillian_spanish) -"(language_spanish) -Set up language parameters for Castillian Spanish." - - (voice_el_diphone) - (set! male1 voice_el_diphone) - - (Parameter.set 'Language 'spanish) +(define (select_language language) +"(select_language LANG) +Chooses language." + (language.select language) ) -(define (select_language language) - (cond - ((or (equal? language 'britishenglish) - (equal? language 'english)) ;; we all know its the *real* English - (language_british_english)) - ((equal? language 'americanenglish) - (language_american_english)) - ((equal? language 'scotsgaelic) - (language_scots_gaelic)) - ((equal? language 'welsh) - (language_welsh)) - ((equal? language 'spanish) - (language_castillian_spanish)) - ((equal? language 'klingon) - (language_klingon)) - (t - (print "Unsupported language, using English") - (language_british_english)))) +(search-for-languages) -(defvar language_default language_british_english) +(defvar language_default 'english) (provide 'languages) --- /dev/null +++ festival-2.1~release/lib/languages/language_czech.scm @@ -0,0 +1,50 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Czech language description +;; +;; + +(define (language_czech) +"(language_czech) +Set up language parameters for Czech." + (set! male1 (lambda () (voice_czech_ph))) + (male1) + (Parameter.set 'Language 'czech) +nil +) + +(language.names.add 'czech (list 'czech )) --- /dev/null +++ festival-2.1~release/lib/languages/language_russian.scm @@ -0,0 +1,49 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Czech language description +;; +;; + +(define (language_russian) +"(language_russian) +Set up language parameters for Russian." + (set! male1 voice_msu_ru_nsh_clunits) + (male1) + (Parameter.set 'Language 'russian) +) + +(language.names.add 'czech (list 'czech )) --- /dev/null +++ festival-2.1~release/lib/languages/language_italian.scm @@ -0,0 +1,53 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Italian language description +;; +;; + +(define (language_italian) +"(language_italian) +Set up language parameters for Italian." + + (if (symbol-bound? 'voice_lp_diphone) + (set! female1 (lambda () (voice_lp_diphone)))) + (set! male1 (lambda () (voice_pc_diphone))) + + (male1) + (Parameter.set 'Language 'italian) +) + +(language.names.add 'italian (list 'italian )) --- /dev/null +++ festival-2.1~release/lib/languages/language_american_english.scm @@ -0,0 +1,55 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; American English language description +;; +;; + +(define (language_american_english) +"(language_american_english) +Set up language parameters for Aemerican English." + + (if (symbol-bound? 'voice_kal_diphone) + (set! female1 (lambda () (voice_kal_diphone)))) + (set! male1 (lambda () (voice_ked_diphone))) + + (male1) + (Parameter.set 'Language 'americanenglish) +nil +) + + +(language.names.add 'american_english (list 'americanenglish )) --- /dev/null +++ festival-2.1~release/lib/languages/language_scots_gaelic.scm @@ -0,0 +1,49 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Scots Gaelic language description +;; +;; + +(define (language_scots_gaelic) +"(language_scots_gaelic) +Set up language parameters for Scots Gaelic." + (error "Scots Gaelic not yet supported.") + + (Parameter.set 'Language 'scotsgaelic) +) + +(language.names.add 'scotsgaelic (list 'scotsgaelic )) --- /dev/null +++ festival-2.1~release/lib/languages/language_british_english.scm @@ -0,0 +1,58 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; British English language description +;; +;; + +(define (language_british_english) +"(language_british_english) +Set up language parameters for British English." + (require 'voices) + ;; Will get more elaborate, with different choices of voices in language + + (set! male1 (lambda () (voice_rab_diphone))) + (set! male2 (lambda () (voice_don_diphone))) + (if (symbol-bound? 'voice_gsw_diphone) + (set! male3 voice_gsw_diphone)) + (if (symbol-bound? 'voice_gsw_450) + (set! male4 voice_gsw_450)) + + (male1) + (Parameter.set 'Language 'britishenglish) +) + +(language.names.add 'british_english (list 'britishenglish 'english));; we all know its the *real* English --- /dev/null +++ festival-2.1~release/lib/languages/language_finnish.scm @@ -0,0 +1,56 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Finnish language description +;; +;; + + +(define (language_finnish) +"(language_finnish) +Set up language parameters for Finnish." + (if (symbol-bound? 'voice_suo_fi_lj_diphone) + (set! female1 (lambda () (voice_suo_fi_lj_diphone)))) + (set! male1 (lambda () (voice_hy_fi_mv_diphone))) + + (male1) + (Parameter.set 'Language 'finnish) +nil +) + + + +(language.names.add 'finnish (list 'finnish )) --- /dev/null +++ festival-2.1~release/lib/languages/language_welsh.scm @@ -0,0 +1,52 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Welsh language description +;; +;; + +(define (language_welsh) +"(language_welsh) +Set up language parameters for Welsh." + + (set! male1 (lambda () (voice_welsh_hl))) + + (male1) + (Parameter.set 'Language 'welsh) +) + + +(language.names.add 'welsh (list 'welsh )) --- /dev/null +++ festival-2.1~release/lib/languages/language_castillian_spanish.scm @@ -0,0 +1,51 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;; +;;; Centre for Speech Technology Research ;; +;;; University of Edinburgh, UK ;; +;;; Copyright (c) 2002 ;; +;;; All Rights Reserved. ;; +;;; ;; +;;; Permission is hereby granted, free of charge, to use and distribute ;; +;;; this software and its documentation without restriction, including ;; +;;; without limitation the rights to use, copy, modify, merge, publish, ;; +;;; distribute, sublicense, and/or sell copies of this work, and to ;; +;;; permit persons to whom this work is furnished to do so, subject to ;; +;;; the following conditions: ;; +;;; 1. The code must retain the above copyright notice, this list of ;; +;;; conditions and the following disclaimer. ;; +;;; 2. Any modifications must be clearly marked as such. ;; +;;; 3. Original authors' names are not deleted. ;; +;;; 4. The authors' names are not used to endorse or promote products ;; +;;; derived from this software without specific prior written ;; +;;; permission. ;; +;;; ;; +;;; THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK ;; +;;; DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ;; +;;; ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT ;; +;;; SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE ;; +;;; FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ;; +;;; WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN ;; +;;; AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ;; +;;; ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF ;; +;;; THIS SOFTWARE. ;; +;;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Author: +;;; Date: +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;; Castillian Spanish language description +;; +;; + +(define (language_castillian_spanish) +"(language_spanish) +Set up language parameters for Castillian Spanish." + + (voice_el_diphone) + (set! male1 (lambda () (voice_el_diphone))) + + (Parameter.set 'Language 'spanish) +) + +(language.names.add 'castillian_spanish (list 'spanish 'castellano))