Skip to main content

gTTS google text-to-speech django app

Project description

Django-Gtts

Coverage Status

A Django app to add gTTS google text-to-speech to the template and cache generated text-to-speech .mp3 files.

Install:

- With pip

  • pip install Django-Gtts

- From the source:

  • git clone https://github.com/mrf345/django_gtts.git
  • cd django_gtts
  • python setup.py install

Setup:

- Add it to the settings.py in INSTALLED_APPS:

INSTALLED_APPS = [
    'gTTS',
    ...
]

After adding the app make sure to do migration for caching model :

  • python manage.py makemigrations gTTS
  • python manage.py migrate gTTS

- Inside your Django Template:

NOTE: load gTTS should be used once in the begining of every template that uses say, Or once in the begining of the base template.

{% load gTTS %}
<audio
    src="{% say 'en-us' 'text to say' %}"
    controls
></audio>

- To add a dynamic translation view to urls.py:

from django.urls import path, include

urlpatterns = [
    ...
    # for unauthorized access dynamic translation 
    path('gtts/', include('gTTS.urls')),
    # for user authorized dynamic translation
    path('gtts_auth/', include('gTTS.urls_auth')),
    ...
]

now you can access http://localhost:8000/<language>/<text> and, it should return json response {'mp3': 'static mp3 link'}

- To clean up stored cache of mp3 files and modal records

from gTTS.cache import remove_cache

remove_cache()

- Options:

say(
    language='en-us', # language to convert text to
    text='say hi'): # text to be converted`_<br />

- List of supported languages:

'af' : 'Afrikaans' 'sq' : 'Albanian' 'ar' : 'Arabic' 'hy' : 'Armenian' 'bn' : 'Bengali' 'ca' : 'Catalan' 'zh' : 'Chinese' 'zh-cn' : 'Chinese (Mandarin/China)' 'zh-tw' : 'Chinese (Mandarin/Taiwan)' 'zh-yue' : 'Chinese (Cantonese)' 'hr' : 'Croatian' 'cs' : 'Czech' 'da' : 'Danish' 'nl' : 'Dutch' 'en' : 'English' 'en-au' : 'English (Australia)' 'en-uk' : 'English (United Kingdom)' 'en-us' : 'English (United States)' 'eo' : 'Esperanto' 'fi' : 'Finnish' 'fr' : 'French' 'de' : 'German' 'el' : 'Greek' 'hi' : 'Hindi' 'hu' : 'Hungarian' 'is' : 'Icelandic' 'id' : 'Indonesian' 'it' : 'Italian' 'ja' : 'Japanese' 'km' : 'Khmer (Cambodian)' 'ko' : 'Korean' 'la' : 'Latin' 'lv' : 'Latvian' 'mk' : 'Macedonian' 'no' : 'Norwegian' 'pl' : 'Polish' 'pt' : 'Portuguese' 'ro' : 'Romanian' 'ru' : 'Russian' 'sr' : 'Serbian' 'si' : 'Sinhala' 'sk' : 'Slovak' 'es' : 'Spanish' 'es-es' : 'Spanish (Spain)' 'es-us' : 'Spanish (United States)' 'sw' : 'Swahili' 'sv' : 'Swedish' 'ta' : 'Tamil' 'th' : 'Thai' 'tr' : 'Turkish' 'uk' : 'Ukrainian' 'vi' : 'Vietnamese' 'cy' : 'Welsh'

Credit:

  • gTTS: Python Google text-to-speech

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Django-Gtts-0.4.tar.gz (6.2 kB view hashes)

Uploaded Source

Built Distribution

Django_Gtts-0.4-py3-none-any.whl (7.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page