Una simple biblioteca de Python para convertir el texto sánscrito a la voz (TTS). Los motores TTS compatibles son:
Ambas opciones de API requieren autenticación, en forma de credenciales en la nube de Google, o la tecla API Bhashini. Los desarrolladores de Bhashini han proporcionado generosamente una clave API para el uso no comercial y limitado de la API para crear audio de textos sánscritos. Esto se puede usar a través del proxy Bhashini (ver el uso a continuación). Tenga en cuenta que el proxy Bhashini (la opción predeterminada) no debe usarse para otros fines.
Este paquete utiliza pydub para administrar datos de audio, que a su vez requiere ffmpeg o libav . Consulte los detalles (aquí) [https://github.com/jiaaro/pydub#dependencies].
Este paquete debería funcionar con cualquier versión de Python> = 3.8.
pip install sanskrit_ttsPara instalar desde la rama maestra del repositorio de Git:
pip install git+https://github.com/avinashvarna/sanskrit_tts.gitPara una instalación editable (para modificar el código y el experimento)
git clone https://github.com/avinashvarna/sanskrit_tts.git
cd sanskrit_tts
pip install -e . Todas las clases de TTS exponen la misma interfaz, por lo que el cambio debe ser bastante fácil.
from sanskrit_tts import default_tts
text = "तैत्तिरीयोपनिषत् प्रसिद्धासु दशसु उपनिषत्सु अन्यतमा ।"
TTS = default_tts ()
audio = TTS . synthesize ( text )
# Export the audio as an MP3
audio . export ( "sanskrit_speech.mp3" ) from sanskrit_tts . bhashini_tts import BhashiniTTS
text = "तैत्तिरीयोपनिषत् प्रसिद्धासु दशसु उपनिषत्सु अन्यतमा ।"
api_key = ...
TTS = BhashiniTTS ( api_key = api_key )
audio = TTS . synthesize ( text )
# Export the audio as an MP3
audio . export ( "sanskrit_speech.mp3" )Requiere credenciales, por ejemplo, de una (cuenta de servicio) [https://cloud.google.com/iam/docs/creating-managing-service-counts].
import os
from sanskrit_tts . gcloud_tts import GCloudTTS
# Setup credentials
os . environ [ 'GOOGLE_APPLICATION_CREDENTIALS' ] = './credentials.json'
text = "तैत्तिरीयोपनिषत् प्रसिद्धासु दशसु उपनिषत्सु अन्यतमा ।"
TTS = GCloudTTS ()
audio = TTS . synthesize ( text )
# Export the audio as an MP3
audio . export ( "sanskrit_speech.mp3" )Tanto Google Cloud TTS como Bhashini de texto a voz no admiten sánscrito todavía. Como solución, esta biblioteca utiliza otros idiomas para la conversión de habla a texto. Kannada se usa de forma predeterminada para esta solución. Cualquier otro idioma/voz compatible con la API TTS correspondiente se puede utilizar cambiando los parámetros apropiados al instancias de la clase TTS, y los resultados variarán. Aquí está disponible una lista completa de voces compatibles con Google Cloud TTS. Para Bhashini, consulte la (demostración) [https://tts.bhashini.ai/demo/].