Acerca de

Newfon es un sintetizador de voz que soporta los idiomas ruso y ucraniano
desde su primera versión. Más tarde se añadieron el croata, el serbio y el
polaco.

Características generales:

  • Posibilidad de cambiar idiomas;
  • Cambio de la frecuencia de muestreo;
  • Interpolación de sonidos para simular el sonido de los antiguos lectores
    de libros y lectores de pantalla para DOS;
  • Para que el sintetizador lea texto según se escribe, es posible
    deshabilitar el diccionario de acentos incorporado. Esta opción sólo
    funciona en ruso;
  • El sintetizador, además de la velocidad principal del 0 al 100%, soporta
    aceleración adicional de voz, que reduce el tiempo de lectura;
  • Para lograr una lectura más suave a velocidades altas, es posible ajustar
    las pausas entre frases.

Nota:

Se han liberado varias versiones de Newfon desde que se publicó en el sitio
oficial de complementos de NVDA, pero por desgracia el desarrollador
principal, Sergey Shishmintsev, falleció y esto retrasó la actualización del
complemento en el sitio.

En 2017, los desarrolladores actuales del sintetizador de voz Newfon
tuvieron la oportunidad de obtener el código fuente de los desarrollos de
Sergey. Sus familiares, gracias a quienes esto ocurrió, sólo pusieron una
condición: si sus proyectos continúan, deben ser gratuitos.

Los desarrolladores, por su parte, decidieron que la historia no debería
olvidar a Sergey Shishmintsev, ya que fue un programador único con una
enorme perseverancia, trabajo duro y conocimientos.

Registro de cambios

Versión 2023.3

La licencia GPL vuelve a sustituir a la licencia MIT. Ahora se usa MIT para
los scripts de código abierto y GPL se usa para el controlador de voz de
Newfon.

Versión 2023.2

Se cambia la licencia de Newfon de GPL a MIT.

Versión 2023.1

  • Se ha añadido compatibilidad con NVDA 2023.1 (todavía se soporta la
    compatibilidad con NVDA 2019);
  • Se ha añadido el acuerdo de licencia de Newfon en inglés;
  • Añadida documentación en ruso.

Versión 2022.04.16

Compatible con NVDA 2022 (se soporta todavía la compatibilidad hacia atrás
con NVDA 2019.2).

Versión 2021.06.06

Se ha modificado el valor de última versión probada para dar compatibilidad
con versiones recientes de NVDA.

Versión 2021.03.19

Para dar compatibilidad con las futuras versiones de NVDA, se han cambiado
los mecanismos internos de interacción del sintetizador con los
controladores de NVDA.

Versión 2021.01.16

Añadido:

speech.BreakCommand – Algunos complementos necesitan esta función para
pausar la voz un rato.

Corregido:

En ucraniano, algunas letras mayúsculas no se leían correctamente.

Versión 2020.12.28

En esta versión, se ha hecho un procesado significativo de los scripts,
reestructuración del complemento, nuevos idiomas (oportunidad de pruebas) y
mucho más.

Añadido:

  • Nuevos idiomas: croata, polaco y serbio. Estos scripts se han tomado de
    orígenes abiertos o han sido proporcionados por evaluadores beta. El autor
    no puede hacerse responsable del funcionamiento de estos scripts, por lo
    que tendrás que usarlos sin garantías de ningún tipo;
  • Se han añadido algunos caracteres antiguos al idioma ruso: «і»: «и
    десятеричное», «ѣ»: «ять», «ѳ»: «фита», «ѵ»: «ижица», «ў»: «у краткое»,
    «ґ»: «гэ взрывное». Como consecuencia, ahora las palabras rusas antiguas
    deberían leerse adecuadamente;
  • Interpolación de sonido. Ahora, puedes imitar el sonido de un newfon,
    igual que en los viejos lectores de pantalla de DOS y los lectores de
    libros. Para implementar esta función, se usa la biblioteca libsamplerate;
  • Ahora se puede desactivar la lectura de fracciones decimales (sólo en ruso
    y ucraniano), lo que mejora la lectura de versiones de los programas.

Cambiado:

  • Se ha reescrito por completo el complemento. El código ya no está en un
    único archivo init.py, lo que facilita mantenerlo y añadir nuevos
    idiomas;
  • Se han portado las colas de las dlls a Python, lo que mejora la
    estabilidad del complemento.

Corregido:

El problema del sonido mal sincronizado que apareción en versiones recientes
de NVDA.

Versión 2020.09.12

Cambiado:

A causa de un cambio en la forma de trabajo del subsistema de sonido en las
nuevas versiones alfa de NVDA, la frecuencia de muestreo no se cambiaba
correctamente.

Versión 2020.03.12

Añadido:

  • A petición de los usuarios, se ha añadido una función opcional para la
    pronunciación en inglés. En vez del sonido е, se pronuncia el sonido э,
    como en los complementos antiguos;
  • Ahora, la interfaz del complemento se ha traducido a ucraniano, y todos
    sus parámetros se mostrarán en el idioma correspondiente.

Cambiado

  • Gracias al programador Kvark, la arquitectura del complemento se ha
    adaptado a Python 3;
  • Para los fans de las voces no estándar, se ha expandido la lista de
    frecuencias de muestreo.

Un híbrido de speechPlayer y eSpeak, contiene la voz Edward.

Información General

NV Speech Player es un prototipo de sintetizador de voz libre y de código
abierto que se puede utilizar con NVDA. Genera habla utilizando síntesis
Klatt, haciéndolo parecerse un poco a sintetizadores de voz tales como
Dectalk y Eloquence.

Licencia y copyright

NV Speech Player es Copyright (c) 2014 Colaboradores de NV Speech Player NV
Speech Player está cubierto por la GNU General Public License (Versión 2).
eres libre de compartir o modificar este software de cualquier manera que
quieras siempre que esté acompañado por la licencia y hagas todo el código
fuente disponible para quien lo quiera. Esto se aplica tanto a las copias
originales como a las modificadas de este software, más cualquier trabajo
derivado. Para detalles adicionales, puedes ver la licencia en línea:
http://www.gnu.org/licenses/old-licenses/gpl-2.0.html

Antecedentes

En los años 70 y 80 se vió una gran investigación en la síntesis de voz. Uno
de los más prominentes modelos de síntesis que apareció fue una síntesis de
formantes de frecuencia conocida como síntesis Klatt. Algunos
sintetizadores Klatt bien conocidos son Dectalk y Eloquence. Son muy
adecuados para su uso por parte de ciegos ya que son extremadamente
sensibles, su pronunciación es suave y fácil de entender, y son pequeños en
memoria. Sin embargo, la investigación pronto se trasladó a otras formas
de síntesis tales como el habla concatenativa, ya que aunque ésta era más
lenta, era mucho más cercana a la voz humana. Esto era una ventaja para su
utilización en aplicaciones de uso común tales como unidades de GPS o
sistemas de telefonía, pero no fue necesariamente una ventaja para los
ciegos, quienes tienden a preocuparse más de la capacidad de respuesta y la
inteligibilidad.

Aunque los sintetizadores tales como Dectalk y Eloquence continuaron
manteniéndose y disponibles por casi 20 años, ahora se están volviendo más
difíciles de conseguir, con múltiples compañías diciendo que éstos, y sus
variantes, se han terminado definitivamente y no serán actualizados nunca
más.

La síntesis concatenativa ahora está comenzando a ser prometedora como un
reemplazo ya que la capacidad de respuesta y la suavidad está mejorando. Sin
embargo, la mayoría si no todos los sintetizadores de calidad aceptable son
commerciales y son bastante caros.

Tanto Dectalk como Eloquence fueron productos comerciales de fuente
cerrada. No obstante, hay una cantidad sustancial de código fuente y
recursos materiales sobre síntesis Klatt disponible para la comunidad. NV
Speech Player trata de tomar ventaja de esto por ser un prototipo moderno de
un sintetizador Klatt, con la esperanza de ser un reemplazo de
sintetizadores como Dectalk o Eloquence, o al menos el reinicio de la
investigación y conversación acerca de este método de síntesis.

El sintetizador eSpeak, en sí un producto libre y de código abierto ha
demostrado ser bueno como un reemplazo para un cierto número de gente en la
comunidad, pero mucha gente que lo escuchan señala rápidamente su sonido
«metálico» y no parecen querer continuar utilizándolo. Aunque los autores de
NV Speech Player todavía prefieren a eSpeak como su sintetizador de
elección, aún tratarían de entender mejor esta extraña resistencia a eSpeak
que puede tener algo que ver con la síntesis de frecuencia espectral de
versos de eSpeak de la síntesis Klatt. También puede tener que vber con el
hecho de que las consonantes también se recolectan de voz grabada y por lo
tanto puede percibirse como se inyectan en el proceso del habla.

Implementación

El motor de síntesis de voz mismo está escrito en C++ utilizando idiomas
modernos, pero siguiendo de cerca la implementación de klsyn-88, que se
encuentra en http://linguistics.berkeley.edu/phonlab/resources/

se utiliza eSpeak para interpretar texto en fonemas representados en IPA,
haciendo uso del procesamiento de diccionarios existente de eSpeak. eSpeak
puede encontrarse en: http://espeak.sourceforge.net/

Los datos formantes de Klatt para cada fonema individual fueron recolectados
en su mayor parte de un proyecto llamado PyKlatt:
http://code.google.com/p/pyklatt/ Asimismo ha sido modificado aún más
basándose en las pruebas y la comparación con los propios datos de eSpeak.

Las reglas para longitud de fonemas, cortes, velocidad y entonación han sido
codificados a mano en Python, aunque los propios datos de entonación de
eSpeak se trataron de copiar tanto como fuese posible.

Compilando NV Speech Player

Necesitarás: – Python 3.7: https://www.python.org – SCons 3:
https://www.scons.org/ – Visual Studio 2019 Community

Para compilar: ejecuta scons

Después de la compilación, habrá un fichero nvSpeechPlayer_xxx.nvda-addon en
el directorio raíz, donde xxx es la revisión git o número de versión
codificado. Instalando este complemento en NVDA te permitirá utilizar el
sintetizador Speech Player en NVDA. Ten en cuenta que cada vez que lo
necesites está en el complemento, no se necesitan dlls extra o ficheros a
copiar.