¿Cuántas sílabas hay en «Fuego»?
Privacidad &Cookies
Este sitio utiliza cookies. Al continuar, aceptas su uso. Más información, incluyendo cómo controlar las cookies.
He estado mirando el programa VirtualSinger, y una cosa que me parece interesante es cómo maneja las sílabas. Básicamente, utiliza los guiones para calcular cuántas notas tiene una palabra, pero vuelve a separarlas automáticamente utilizando la regla de que cada nota tiene un solo sonido vocálico de núcleo.
A primera vista, se trata de una solución bastante limpia… pero hay palabras que parecen inocentes y que causan problemas al intentar determinar cómo deben tratarse.
«Fuego» es una de esas palabras que causan problemas, porque fonéticamente es /F AY ER/, que tiene dos vocales «núcleo» – /AY/ y /ER/. Sin embargo, la mayoría de las veces se pronuncia como una sola sílaba.
Entonces, ¿cómo se debe manejar esto? Tanto en VirtualSinger como en synSinger, se puede recurrir a deletrear los fonemas, pero ese es un enfoque bastante feo.
El enfoque de synSinger es un híbrido. Primero, construye la palabra a partir de las notas, y luego comprueba una copia local del Diccionario CMU. Si coincide: ¡genial! Problema resuelto.
Pero si no hay coincidencia, las cosas pueden ponerse difíciles. Entonces pasa la palabra a una versión modificada de Reciter que convierte la palabra en fonemas emparejados con las letras originales. Por ejemplo, la palabra CATTLE se convierte en C:K A:AE T:T T:T L:L E:EH. A continuación, reconstruye la palabra utilizando la ortografía original, insertando los guiones en relación con la posición seleccionada por el usuario.
La palabra FUEGO se convertiría en F:F I:AY R:ER E:. Así que si el usuario introdujo FIRE, el resultado es FAYER, y si escribió FI-RE, el resultado es FAY-ER. Todo esto ocurre entre bastidores, y la mayoría de las veces simplemente funciona como el usuario espera.
Desgraciadamente, hay algo que synSinger no hace bien y que VocalWriter hace muy bien: manejar los melismas. Es decir, múltiples notas asignadas a una sola sílaba.
VocalWriter utiliza el carácter ‘=’ para representar «expandir el último núcleo». Es particularmente agradable, porque esto puede escribirse como «THE FIG- =- =-» y se expandirá automáticamente a «DHAX FIH-IH-IHG» con las consonantes finales colocadas correctamente.
SynSinger no soporta esto, así que si quiere escribir algo así, tiene que hacerlo fonéticamente. Y si estás trabajando con un diptongo, tienes que encontrar una vocal aproximada para las sílabas iniciales antes del diptongo final.
Recientemente he modificado synSinger para que si un diptongo se sigue a sí mismo, sólo el último se expanda completamente. Esto hace que sea un poco menos de un dolor de usar, pero todavía en ninguna parte tan agradable como VirtualVoice.
Así que estoy mirando a la adición de la función a synSinger, por lo que «sólo funciona» en lugar de tener que recurrir a escribir fonemas.
Leave a Reply